Re: balsa-2.3.2-1 Segmentation fault



On 06/01/2005 04:53:16 AM, Willem Riede wrote:
After rpmbuilding a binary on FC3, x86_64 architecture, from
balsa-2.3.2-1.src.rpm I get:
[snip]
What did I do wrong?

Everything you did was right. I could reproduce your problem and attached (quite obvious!) patch fixes the problem for me. Can you please verify it, too?

Pawel
--- libbalsa/folder-scanners.c-orig	2005-06-02 11:01:15.000000000 +0200
+++ libbalsa/folder-scanners.c	2005-06-02 11:02:01.000000000 +0200
@@ -210,7 +210,7 @@
 
 static void
 libbalsa_imap_list_cb(ImapMboxHandle * handle, int delim,
-                      ImapMboxFlags * flags, char *folder,
+                      ImapMboxFlags flags, char *folder,
                       struct browser_state *state)
 {
     gboolean noselect, marked;
@@ -232,7 +232,7 @@
      * authoritative" than those in the LSUB response, except that a
      * \noselect flag in the LSUB response means that the mailbox isn't
      * subscribed, so we should respect it. */
-    noselect = (IMAP_MBOX_HAS_FLAG(*flags, IMLIST_NOSELECT) != 0);
+    noselect = (IMAP_MBOX_HAS_FLAG(flags, IMLIST_NOSELECT) != 0);
     if (state->subscribed) {
         gpointer tmp;
         ImapMboxFlags lsub_flags;
@@ -249,23 +249,23 @@
 
     /* These flags are different, but both mean that we don't need to
      * scan the folder: */
-    noscan = (IMAP_MBOX_HAS_FLAG(*flags, IMLIST_NOINFERIORS)
-              || IMAP_MBOX_HAS_FLAG(*flags, IMLIST_HASNOCHILDREN))
-        && !IMAP_MBOX_HAS_FLAG(*flags, IMLIST_HASCHILDREN);
+    noscan = (IMAP_MBOX_HAS_FLAG(flags, IMLIST_NOINFERIORS)
+              || IMAP_MBOX_HAS_FLAG(flags, IMLIST_HASNOCHILDREN))
+        && !IMAP_MBOX_HAS_FLAG(flags, IMLIST_HASCHILDREN);
     if (noscan) {
         g_hash_table_remove(state->subfolders, f);
         g_free(f);
     } else
         g_hash_table_insert(state->subfolders, f, NULL);
 
-    marked = IMAP_MBOX_HAS_FLAG(*flags, IMLIST_MARKED);
+    marked = IMAP_MBOX_HAS_FLAG(flags, IMLIST_MARKED);
     state->handle_imap_path(folder, delim, noselect, noscan, marked,
                             state->cb_data);
 }
 
 static void
 libbalsa_imap_lsub_cb(ImapMboxHandle * handle, int delim,
-                      ImapMboxFlags * flags, char *folder,
+                      ImapMboxFlags flags, char *folder,
                       struct browser_state *state)
 {
     gchar *f;
@@ -277,7 +277,7 @@
     f = folder[strlen(folder) - 1] == delim ?
         g_strdup(folder) : g_strdup_printf("%s%c", folder, delim);
 
-    g_hash_table_insert(state->subfolders, f, GINT_TO_POINTER(*flags));
+    g_hash_table_insert(state->subfolders, f, GINT_TO_POINTER(flags));
 }
 
 /* executed with GDK lock OFF.



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