Re: Balsa hangs when turning off SSL for IMAP



On 08/22/2004 09:55:30 AM, Miquel van Smoorenburg wrote:
[ snip ]
As soon as I enable SSL (thereby disabling TLS), the following happens right at the moment I click the "Update" button:
[ snip ]

OK, I see that too--still a question of signals not being hooked up quite right. Please try the attached (again, cumulative to the previous patches).

Best,

Peter
Index: src/balsa-app.c
===================================================================
RCS file: /cvs/gnome/balsa/src/balsa-app.c,v
retrieving revision 1.253
diff -u -r1.253 balsa-app.c
--- src/balsa-app.c	20 Aug 2004 10:35:54 -0000	1.253
+++ src/balsa-app.c	22 Aug 2004 17:24:14 -0000
@@ -837,8 +837,8 @@
 		|| mailbox == balsa_app.sentbox
 		|| mailbox == balsa_app.draftbox
 		|| mailbox == balsa_app.trash) {
-		g_object_ref(mbnode);
-		*specials = g_slist_prepend(*specials, mbnode);
+		g_object_ref(mailbox);
+		*specials = g_slist_prepend(*specials, mailbox);
 	    }
 	    ba_remove_children_mailbox_nodes(model, &iter, specials);
 	    valid =
@@ -871,7 +871,9 @@
     ba_remove_children_mailbox_nodes(model, iter, &specials);
 
     for (l = specials; l; l = l->next)
-	balsa_mblist_mailbox_node_append(NULL, l->data);
+        balsa_mblist_mailbox_node_append(NULL,
+                                         balsa_mailbox_node_new_from_mailbox
+                                         (l->data));
     g_slist_free(specials);
 }
 
Index: src/mailbox-node.c
===================================================================
RCS file: /cvs/gnome/balsa/src/mailbox-node.c,v
retrieving revision 1.88
diff -u -r1.88 mailbox-node.c
--- src/mailbox-node.c	21 Aug 2004 16:34:25 -0000	1.88
+++ src/mailbox-node.c	22 Aug 2004 17:24:15 -0000
@@ -353,11 +353,12 @@
 imap_scan_attach_mailbox(BalsaMailboxNode * mbnode, imap_scan_item * isi)
 {
     LibBalsaMailboxImap *m;
+
+    g_signal_connect(G_OBJECT(mbnode), "show-prop-dialog",
+                     G_CALLBACK(folder_conf_imap_sub_node), NULL);
     if (LIBBALSA_IS_MAILBOX_IMAP(mbnode->mailbox))
         /* it already has a mailbox */
         return FALSE;
-    g_signal_connect(G_OBJECT(mbnode), "show-prop-dialog",
-                     G_CALLBACK(folder_conf_imap_sub_node), NULL);
     m = LIBBALSA_MAILBOX_IMAP(libbalsa_mailbox_imap_new());
     libbalsa_mailbox_remote_set_server(LIBBALSA_MAILBOX_REMOTE(m),
 				       mbnode->server);
@@ -1146,6 +1147,7 @@
     BalsaMailboxNode *parent;
     const gchar *basename;
     gchar *url = libbalsa_imap_url(root->server, isi->fn);
+    LibBalsaMailbox *mailbox = NULL;
 
     mbnode = balsa_find_url(url);
     if (mbnode) {
@@ -1158,6 +1160,8 @@
 	    return mbnode;
 	}
 	g_object_unref(mbnode);
+	mailbox = special->mailbox;
+	g_object_ref(mailbox);
 	g_object_unref(special);
     }
     g_free(url);
@@ -1171,6 +1175,7 @@
     g_free(parent_name);
 
     mbnode = balsa_mailbox_node_new_imap_node(root->server, isi->fn);
+    mbnode->mailbox = mailbox;
     basename = strrchr(isi->fn, delim);
     if (!basename)
         basename = isi->fn;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]