diff options
author | Peter Williams <peterw@ximian.com> | 2002-07-16 03:18:12 +0800 |
---|---|---|
committer | Peter Williams <peterw@src.gnome.org> | 2002-07-16 03:18:12 +0800 |
commit | ac9cea6dde28ef3b597d19a4f2b1a06f42b15d8a (patch) | |
tree | 6f9db9f0eb3aa6a7f43be0b0a82fdaef208e3ba9 /camel/providers | |
parent | f9a7422465a5f6c05d080cdbb8b06932d45ce8df (diff) | |
download | gsoc2013-evolution-ac9cea6dde28ef3b597d19a4f2b1a06f42b15d8a.tar.gz gsoc2013-evolution-ac9cea6dde28ef3b597d19a4f2b1a06f42b15d8a.tar.zst gsoc2013-evolution-ac9cea6dde28ef3b597d19a4f2b1a06f42b15d8a.zip |
>= is not appropriate here because the sequences are 1-based; so seq =
2002-07-15 Peter Williams <peterw@ximian.com>
* providers/imap/camel-imap-folder.c (imap_rescan): >= is not appropriate
here because the sequences are 1-based; so seq = summary_len is valid.
Hopefully addresses 15646, because this caused the last message in a folder
to be reloaded, replacing its CamelMessageInfo, and the tree view was using
the old CamelMessageInfo.
svn path=/trunk/; revision=17460
Diffstat (limited to 'camel/providers')
-rw-r--r-- | camel/providers/imap/camel-imap-folder.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/camel/providers/imap/camel-imap-folder.c b/camel/providers/imap/camel-imap-folder.c index a437024991..ee8a7b1f4a 100644 --- a/camel/providers/imap/camel-imap-folder.c +++ b/camel/providers/imap/camel-imap-folder.c @@ -550,7 +550,7 @@ imap_rescan (CamelFolder *folder, int exists, CamelException *ex) uid = g_datalist_get_data (&data, "UID"); flags = GPOINTER_TO_UINT (g_datalist_get_data (&data, "FLAGS")); - if (!uid || !seq || seq >= summary_len) { + if (!uid || !seq || seq > summary_len) { g_datalist_clear (&data); continue; } @@ -628,9 +628,10 @@ imap_rescan (CamelFolder *folder, int exists, CamelException *ex) * repeatedly add the same number to the removed array. * See RFC2060 7.4.1) */ + for (i = seq; i <= summary_len; i++) g_array_append_val (removed, seq); - + /* And finally update the summary. */ camel_imap_folder_changed (folder, exists, removed, ex); g_array_free (removed, TRUE); |