2009-07-14 [colin] 3.7.2cvs8
authorColin Leroy <colin@colino.net>
Tue, 14 Jul 2009 15:37:14 +0000 (15:37 +0000)
committerColin Leroy <colin@colino.net>
Tue, 14 Jul 2009 15:37:14 +0000 (15:37 +0000)
* src/imap.c
Fix bug 1954, 'Segfault on reading wrong STATUS'

ChangeLog
PATCHSETS
configure.ac
src/imap.c

index f74843f..c25554b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2009-07-14 [colin]     3.7.2cvs8
+
+       * src/imap.c
+               Fix bug 1954, 'Segfault on reading wrong STATUS'
+
 2009-07-10 [colin]     3.7.2cvs7
 
        * src/plugins/pgpcore/plugin.def
 2009-07-10 [colin]     3.7.2cvs7
 
        * src/plugins/pgpcore/plugin.def
index a892e39..f7c23ec 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.207.2.213 -r 1.207.2.214 src/folderview.c;  ) > 3.7.2cvs5.patchset
 ( cvs diff -u -r 1.16.2.36 -r 1.16.2.37 src/prefs_display_header.c;  ) > 3.7.2cvs6.patchset
 ( cvs diff -u -r 1.1.2.4 -r 1.1.2.5 src/plugins/pgpcore/plugin.def;  cvs diff -u -r 1.20.2.71 -r 1.20.2.72 src/common/utils.h;  ) > 3.7.2cvs7.patchset
 ( cvs diff -u -r 1.207.2.213 -r 1.207.2.214 src/folderview.c;  ) > 3.7.2cvs5.patchset
 ( cvs diff -u -r 1.16.2.36 -r 1.16.2.37 src/prefs_display_header.c;  ) > 3.7.2cvs6.patchset
 ( cvs diff -u -r 1.1.2.4 -r 1.1.2.5 src/plugins/pgpcore/plugin.def;  cvs diff -u -r 1.20.2.71 -r 1.20.2.72 src/common/utils.h;  ) > 3.7.2cvs7.patchset
+( cvs diff -u -r 1.179.2.247 -r 1.179.2.248 src/imap.c;  ) > 3.7.2cvs8.patchset
index c29a473..a5c9b6e 100644 (file)
@@ -12,7 +12,7 @@ MINOR_VERSION=7
 MICRO_VERSION=2
 INTERFACE_AGE=0
 BINARY_AGE=0
 MICRO_VERSION=2
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=7
+EXTRA_VERSION=8
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index 712d0fd..9b90557 100644 (file)
@@ -3461,9 +3461,12 @@ static gint imap_status(IMAPSession *session, IMAPFolder *folder,
                return r;
        }
        
                return r;
        }
        
-       if (data_status->st_info_list == NULL) {
-               mailimap_mailbox_data_status_free(data_status);
-               debug_print("status->st_info_list == NULL\n");
+       if (data_status == NULL || data_status->st_info_list == NULL) {
+               debug_print("data_status %p\n", data_status);
+               if (data_status) {
+                       debug_print("data_status->st_info_list %p\n", data_status->st_info_list);
+                       mailimap_mailbox_data_status_free(data_status);
+               }
                return MAILIMAP_ERROR_BAD_STATE;
        }
        
                return MAILIMAP_ERROR_BAD_STATE;
        }