[Goodies-commits] r5258 - xfce4-mailwatch-plugin/trunk/libmailwatch-core

Brian Tarricone kelnos at xfce.org
Sat Aug 16 20:15:32 CEST 2008


Author: kelnos
Date: 2008-08-16 18:15:32 +0000 (Sat, 16 Aug 2008)
New Revision: 5258

Modified:
   xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-mailbox-imap.c
   xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-mailbox-pop3.c
   xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-net-conn.c
   xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-net-conn.h
Log:
fix crash when connection fails/times out

Modified: xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-mailbox-imap.c
===================================================================
--- xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-mailbox-imap.c	2008-08-16 10:45:19 UTC (rev 5257)
+++ xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-mailbox-imap.c	2008-08-16 18:15:32 UTC (rev 5258)
@@ -663,7 +663,8 @@
                 XFCE_MAILWATCH_MAILBOX(imailbox), new_messages);
     }
 
-    imap_send(imailbox, net_conn, "ABCD LOGOUT\r\n");
+    if(xfce_mailwatch_net_conn_is_connected(net_conn))
+        imap_send(imailbox, net_conn, "ABCD LOGOUT\r\n");
     
     if(mailboxes_to_check) {
         g_list_foreach(mailboxes_to_check, (GFunc)g_free, NULL);

Modified: xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-mailbox-pop3.c
===================================================================
--- xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-mailbox-pop3.c	2008-08-16 10:45:19 UTC (rev 5257)
+++ xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-mailbox-pop3.c	2008-08-16 18:15:32 UTC (rev 5258)
@@ -486,7 +486,8 @@
                 XFCE_MAILWATCH_MAILBOX(pmailbox), new_messages);
     }
     
-    pop3_send(pmailbox, "QUIT\r\n");
+    if(xfce_mailwatch_net_conn_is_connected(pmailbox->net_conn))
+        pop3_send(pmailbox, "QUIT\r\n");
     
     if(pmailbox->net_conn) {
         xfce_mailwatch_net_conn_destroy(pmailbox->net_conn);

Modified: xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-net-conn.c
===================================================================
--- xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-net-conn.c	2008-08-16 10:45:19 UTC (rev 5257)
+++ xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-net-conn.c	2008-08-16 18:15:32 UTC (rev 5258)
@@ -581,6 +581,13 @@
 }
 
 gboolean
+xfce_mailwatch_net_conn_is_connected(XfceMailwatchNetConn *net_conn)
+{
+    g_return_val_if_fail(net_conn, FALSE);
+    return net_conn->fd != -1 ? TRUE : FALSE;
+}
+
+gboolean
 xfce_mailwatch_net_conn_make_secure(XfceMailwatchNetConn *net_conn,
                                     GError **error)
 {

Modified: xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-net-conn.h
===================================================================
--- xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-net-conn.h	2008-08-16 10:45:19 UTC (rev 5257)
+++ xfce4-mailwatch-plugin/trunk/libmailwatch-core/mailwatch-net-conn.h	2008-08-16 18:15:32 UTC (rev 5258)
@@ -54,6 +54,8 @@
 gboolean xfce_mailwatch_net_conn_connect(XfceMailwatchNetConn *net_conn,
                                          GError **error);
 
+gboolean xfce_mailwatch_net_conn_is_connected(XfceMailwatchNetConn *net_conn);
+
 gboolean xfce_mailwatch_net_conn_make_secure(XfceMailwatchNetConn *net_conn,
                                              GError **error);
 




More information about the Goodies-commits mailing list