2005-06-22 [colin] 1.9.11cvs91
authorColin Leroy <colin@colino.net>
Wed, 22 Jun 2005 21:33:46 +0000 (21:33 +0000)
committerColin Leroy <colin@colino.net>
Wed, 22 Jun 2005 21:33:46 +0000 (21:33 +0000)
* src/plugins/spamassassin/libspamc.c
As we do spagetti code with assignations in multiple
places (see _message_read_raw where out = msg = raw),
let's be sure we don't free the same pointer twice.
Should fix bug #683 (Crash in libpam at
message_cleanup).

ChangeLog-gtk2.claws
PATCHSETS
configure.ac
src/plugins/spamassassin/libspamc.c

index d63f13e4c07c2f60148b59cc2327938765ce9bae..b0864f0207da9ba39408701eca778f0e38cda8bb 100644 (file)
@@ -1,3 +1,12 @@
+2005-06-22 [colin]     1.9.11cvs91
+
+       * src/plugins/spamassassin/libspamc.c
+               As we do spagetti code with assignations in multiple
+               places (see _message_read_raw where out = msg = raw),
+               let's be sure we don't free the same pointer twice.
+               Should fix bug #683 (Crash in libpam at 
+               message_cleanup).
+
 2005-06-22 [colin]     1.9.11cvs90
 
        * src/compose.c
index b12200143cc77326bed7ba96776eb2ef538d38ea..beda77f74026048ae5b1785b7877015618255fb4 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.179.2.37 -r 1.179.2.38 src/imap.c;  ) > 1.9.11cvs88.patchset
 ( cvs diff -u -r 1.395.2.83 -r 1.395.2.84 src/summaryview.c;  cvs diff -u -r 1.68.2.8 -r 1.68.2.9 src/summaryview.h;  cvs diff -u -r 1.274.2.42 -r 1.274.2.43 src/mainwindow.c;  ) > 1.9.11cvs89.patchset
 ( cvs diff -u -r 1.382.2.133 -r 1.382.2.134 src/compose.c;  cvs diff -u -r 1.94.2.54 -r 1.94.2.55 src/messageview.c;  cvs diff -u -r 1.43.2.17 -r 1.43.2.18 src/toolbar.c;  ) > 1.9.11cvs90.patchset
+( cvs diff -u -r 1.4.2.4 -r 1.4.2.5 src/plugins/spamassassin/libspamc.c;  ) > 1.9.11cvs91.patchset
index a28194b3d07515bc2d57ce441d035d5b6b913160..f3d129815ca15827d5c62ff1f1fd759a1233221e 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=9
 MICRO_VERSION=11
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=90
+EXTRA_VERSION=91
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index 0a1ab22c19064ce1eb898cc6b6cb355f45653c04..46cf1d179446007fcc20ba6f2c861b1ef3f5f9be 100644 (file)
@@ -1089,9 +1089,9 @@ void message_cleanup(struct message *m)
 {
     if (m->out != NULL)
        free(m->out);
-    if (m->raw != NULL)
+    if (m->raw != NULL && m->raw != m->out)
        free(m->raw);
-    if (m->priv != NULL)
+    if (m->priv != NULL && m->priv != m->out && m->priv != m->raw)
        free(m->priv);
     _clear_message(m);
 }