+2007-05-29 [colin] 2.9.2cvs16
+
+ * src/imap.c
+ Fix loss of local flags when moving mails
+ on IMAP in high-bandwidth mode (UID FETCH)
+
2007-05-25 [paul] 2.9.2cvs15
* src/common/socket.c
( cvs diff -u -r 1.382.2.379 -r 1.382.2.380 src/compose.c; cvs diff -u -r 1.1.2.17 -r 1.1.2.18 src/prefs_compose_writing.c; cvs diff -u -r 1.1.2.17 -r 1.1.2.18 src/prefs_quote.c; cvs diff -u -r 1.12.2.43 -r 1.12.2.44 src/prefs_template.c; cvs diff -u -r 1.1.16.5 -r 1.1.16.6 src/prefs_template.h; cvs diff -u -r 1.8.2.16 -r 1.8.2.17 src/quote_fmt.c; cvs diff -u -r 1.5.12.8 -r 1.5.12.9 src/quote_fmt.h; cvs diff -u -r 1.8.2.10 -r 1.8.2.11 src/quote_fmt_lex.l; cvs diff -u -r 1.22.2.31 -r 1.22.2.32 src/quote_fmt_parse.y; ) > 2.9.2cvs13.patchset
( cvs diff -u -r 1.179.2.173 -r 1.179.2.174 src/imap.c; cvs diff -u -r 1.1.2.45 -r 1.1.2.46 src/imap_gtk.c; ) > 2.9.2cvs14.patchset
( cvs diff -u -r 1.13.2.31 -r 1.13.2.32 src/common/socket.c; ) > 2.9.2cvs15.patchset
+( cvs diff -u -r 1.179.2.174 -r 1.179.2.175 src/imap.c; ) > 2.9.2cvs16.patchset
}
for (elem = sorted_list; elem != NULL; elem = g_slist_next(elem)) {
MsgInfo *msginfo;
- MsgPermFlags flags;
- gboolean wasnew, waspostfiltered;
-
+ MsgPermFlags flags, oldflags;
+ gboolean wasnew;
+
msginfo = (MsgInfo *) elem->data;
flags = msginfo->flags.perm_flags;
wasnew = (flags & MSG_NEW);
- waspostfiltered = (flags & MSG_POSTFILTERED);
-
+ oldflags = flags & ~(MSG_NEW|MSG_UNREAD|MSG_REPLIED|MSG_MARKED|MSG_DELETED);
+
if (folder->account && folder->account->low_bandwidth) {
if (fitem->opened || fitem->processing_pending || fitem == folder->inbox) {
flags &= ~((reverse_seen ? 0 : MSG_UNREAD | MSG_NEW) | MSG_REPLIED | MSG_MARKED);
flags &= ~MSG_NEW;
else if (wasnew)
flags |= MSG_NEW;
+ flags |= oldflags;
}
- if (waspostfiltered)
- flags |= MSG_POSTFILTERED;
+
g_relation_insert(msgflags, msginfo, GINT_TO_POINTER(flags));
}