talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit af33e4fafbd2c2037900f2effd45fe4e6787f586
parent c16092297d3da843e7be9ae168e395db16ba74dc
Author: Colin Leroy <colin@colino.net>
Date:   Thu, 16 Aug 2012 14:24:10 +0000

2012-08-16 [colin]	3.8.1cvs33

	* src/imap.c
		Always clear the tags list when fetching a folder, or
		Claws will never untag an untagged email. Patch by
		Igor Mammedov <imammedo@redhat.com>

Diffstat:
MChangeLog | 7+++++++
MPATCHSETS | 1+
Mconfigure.ac | 2+-
Msrc/imap.c | 11++++-------
4 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,10 @@ +2012-08-16 [colin] 3.8.1cvs33 + + * src/imap.c + Always clear the tags list when fetching a folder, or + Claws will never untag an untagged email. Patch by + Igor Mammedov <imammedo@redhat.com> + 2012-08-12 [colin] 3.8.1cvs32 * src/compose.c diff --git a/PATCHSETS b/PATCHSETS @@ -4407,3 +4407,4 @@ ( cvs diff -u -r 1.94.2.235 -r 1.94.2.236 src/messageview.c; cvs diff -u -r 1.9.2.54 -r 1.9.2.55 src/common/ssl.c; ) > 3.8.1cvs30.patchset ( cvs diff -u -r 1.94.2.236 -r 1.94.2.237 src/messageview.c; ) > 3.8.1cvs31.patchset ( cvs diff -u -r 1.382.2.608 -r 1.382.2.609 src/compose.c; ) > 3.8.1cvs32.patchset +( cvs diff -u -r 1.179.2.258 -r 1.179.2.259 src/imap.c; ) > 3.8.1cvs33.patchset diff --git a/configure.ac b/configure.ac @@ -12,7 +12,7 @@ MINOR_VERSION=8 MICRO_VERSION=1 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=32 +EXTRA_VERSION=33 EXTRA_RELEASE= EXTRA_GTK2_VERSION= diff --git a/src/imap.c b/src/imap.c @@ -4804,10 +4804,9 @@ bail: GSList *tags = g_hash_table_lookup(tags_hash, GINT_TO_POINTER(msginfo->msgnum)); GSList *cur; - if (tags != NULL) { - g_slist_free(msginfo->tags); - msginfo->tags = NULL; - } + g_slist_free(msginfo->tags); + msginfo->tags = NULL; + for (cur = tags; cur; cur = cur->next) { gchar *real_tag = imap_modified_utf7_to_utf8(cur->data, TRUE); gint id = 0; @@ -4816,11 +4815,9 @@ bail: id = tags_add_tag(real_tag); got_alien_tags = TRUE; } - if (!g_slist_find(msginfo->tags, GINT_TO_POINTER(id))) { - msginfo->tags = g_slist_append( + msginfo->tags = g_slist_append( msginfo->tags, GINT_TO_POINTER(id)); - } g_free(real_tag); } slist_free_strings(tags);