X-Git-Url: http://vcs.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fwidgets%2Fmodest-header-view.c;h=121a17d034a72fbc6eb4c5b93860b9010923737b;hp=d217a885106d436eafc0666f0be499453e4b5805;hb=82a8a24cd7ae31c19e9eb787cd6cd43a918e148e;hpb=0d89d65b4da5eddf6d7c088bacaf9e40e728a0a8 diff --git a/src/widgets/modest-header-view.c b/src/widgets/modest-header-view.c index d217a88..121a17d 100644 --- a/src/widgets/modest-header-view.c +++ b/src/widgets/modest-header-view.c @@ -2124,36 +2124,43 @@ current_folder_needs_filtering (ModestHeaderViewPrivate *priv) static gboolean header_match_string (TnyHeader *header, gchar **words) { + gchar *subject; + gchar *cc; + gchar *bcc; + gchar *to; + gchar *from; + gchar **current_word; gboolean found; - found = FALSE; + subject = tny_header_dup_subject (header); + cc = tny_header_dup_cc (header); + bcc = tny_header_dup_bcc (header); + to = tny_header_dup_to (header); + from = tny_header_dup_from (header); - for (current_word = words; !found && *current_word != NULL; current_word++) { - gchar *subject; - gchar *cc; - gchar *bcc; - gchar *to; - gchar *from; + found = FALSE; - subject = tny_header_dup_subject (header); - cc = tny_header_dup_cc (header); - bcc = tny_header_dup_bcc (header); - to = tny_header_dup_to (header); - from = tny_header_dup_from (header); + for (current_word = words; *current_word != NULL; current_word++) { if ((subject && g_strstr_len (subject, -1, *current_word)) || (cc && g_strstr_len (cc, -1, *current_word)) || (bcc && g_strstr_len (bcc, -1, *current_word)) || (to && g_strstr_len (to, -1, *current_word)) - || (from && g_strstr_len (from, -1, *current_word))) + || (from && g_strstr_len (from, -1, *current_word))) { found = TRUE; - g_free (subject); - g_free (cc); - g_free (bcc); - g_free (to); - g_free (from); + } else { + found = FALSE; + break; + } } + + g_free (subject); + g_free (cc); + g_free (bcc); + g_free (to); + g_free (from); + return found; }