From d8914cd872eaabd974805018671d1f92ed891389 Mon Sep 17 00:00:00 2001 From: Colin Leroy Date: Mon, 28 Sep 2009 07:06:42 +0000 Subject: [PATCH 1/1] 2009-09-28 [colin] 3.7.2cvs41 * src/matcher.c * src/mimeview.c * src/prefs_folder_item.c Fix bug 2007, 'Small memory leaks'. Patch by Pawel --- ChangeLog | 7 +++++++ PATCHSETS | 1 + configure.ac | 2 +- src/matcher.c | 12 ++++++++++-- src/mimeview.c | 4 +++- src/prefs_folder_item.c | 8 +++++--- 6 files changed, 27 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2e53bb67b..8c03f1586 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2009-09-28 [colin] 3.7.2cvs41 + + * src/matcher.c + * src/mimeview.c + * src/prefs_folder_item.c + Fix bug 2007, 'Small memory leaks'. Patch by Pawel + 2009-09-28 [colin] 3.7.2cvs40 * src/prefs_summaries.c diff --git a/PATCHSETS b/PATCHSETS index ce63823c8..7e451686d 100644 --- a/PATCHSETS +++ b/PATCHSETS @@ -3865,3 +3865,4 @@ ( cvs diff -u -r 1.654.2.3931 -r 1.654.2.3932 configure.ac; ) > 3.7.2cvs38.patchset ( cvs diff -u -r 1.654.2.3932 -r 1.654.2.3933 configure.ac; ) > 3.7.2cvs39.patchset ( cvs diff -u -r 1.1.2.60 -r 1.1.2.61 src/prefs_summaries.c; cvs diff -u -r 1.9.2.28 -r 1.9.2.29 src/gtk/sslcertwindow.c; ) > 3.7.2cvs40.patchset +( cvs diff -u -r 1.75.2.66 -r 1.75.2.67 src/matcher.c; cvs diff -u -r 1.83.2.155 -r 1.83.2.156 src/mimeview.c; cvs diff -u -r 1.52.2.77 -r 1.52.2.78 src/prefs_folder_item.c; ) > 3.7.2cvs41.patchset diff --git a/configure.ac b/configure.ac index 18c5c667a..acf526113 100644 --- a/configure.ac +++ b/configure.ac @@ -12,7 +12,7 @@ MINOR_VERSION=7 MICRO_VERSION=2 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=40 +EXTRA_VERSION=41 EXTRA_RELEASE= EXTRA_GTK2_VERSION= diff --git a/src/matcher.c b/src/matcher.c index 8a7930b06..5626e3d9f 100644 --- a/src/matcher.c +++ b/src/matcher.c @@ -689,13 +689,21 @@ static gboolean matcherprop_match_test(const MatcherProp *prop, #endif file = procmsg_get_message_file(info); - if (file == NULL) + if (file == NULL) { +#ifdef USE_PTHREAD + g_free(td); +#endif return FALSE; + } g_free(file); cmd = matching_build_command(prop->expr, info); - if (cmd == NULL) + if (cmd == NULL) { +#ifdef USE_PTHREAD + g_free(td); +#endif return FALSE; +} #ifdef USE_PTHREAD /* debug output */ diff --git a/src/mimeview.c b/src/mimeview.c index 6c3cb3048..6ab97459e 100644 --- a/src/mimeview.c +++ b/src/mimeview.c @@ -1598,8 +1598,10 @@ static gchar *mimeview_get_filename_for_part(MimeInfo *partinfo, gchar *filename; filename = g_strdup(get_part_name(partinfo)); - if (!filename || !*filename) + if (!filename || !*filename) { + g_free(filename); filename = g_strdup_printf("noname.%d", number); + } if (!g_utf8_validate(filename, -1, NULL)) { gchar *tmp = conv_filename_to_utf8(filename); diff --git a/src/prefs_folder_item.c b/src/prefs_folder_item.c index b4e7ce530..c873306cb 100644 --- a/src/prefs_folder_item.c +++ b/src/prefs_folder_item.c @@ -1647,14 +1647,16 @@ static void folder_regexp_test_cb(GtkWidget *widget, gpointer data) if (!regexp || !regexp[0]) { gtk_widget_modify_base(page->entry_simplify_subject, GTK_STATE_NORMAL, NULL); - if (test_string) { + if (test_string) gtk_entry_set_text(GTK_ENTRY(page->entry_regexp_test_result), test_string); - g_free(test_string); - } + + g_free(test_string); + g_free(regexp); return; } if (!test_string || !test_string[0]) { + g_free(test_string); g_free(regexp); return; } -- 2.25.1