diff options
Diffstat (limited to 'camel')
-rw-r--r-- | camel/ChangeLog | 11 | ||||
-rw-r--r-- | camel/providers/imap/camel-imap-folder.c | 3 | ||||
-rw-r--r-- | camel/providers/imap/camel-imap-summary.h | 6 |
3 files changed, 19 insertions, 1 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog index 164cd55fab..bfa6e7e0c3 100644 --- a/camel/ChangeLog +++ b/camel/ChangeLog @@ -1,3 +1,14 @@ +2001-02-22 Dan Winship <danw@ximian.com> + + * providers/imap/camel-imap-summary.h (CAMEL_IMAP_SERVER_FLAGS): + #define this as the set of all IMAP system flags + + * providers/imap/camel-imap-folder.c (sync_message): after syncing + flags, set server_flags to (flags & CAMEL_IMAP_SERVER_FLAGS) + rather than just "flags", since any other flags won't have been + synced. Prevents the CAMEL_MESSAGE_ATTACHMENTS flag from getting + lost. + 2001-02-22 Not Zed <NotZed@Ximian.com> * providers/vee/*: Removed all files. diff --git a/camel/providers/imap/camel-imap-folder.c b/camel/providers/imap/camel-imap-folder.c index 87807bcbe5..f72201ca63 100644 --- a/camel/providers/imap/camel-imap-folder.c +++ b/camel/providers/imap/camel-imap-folder.c @@ -434,7 +434,8 @@ sync_message (CamelImapStore *store, CamelFolder *folder, camel_imap_response_free (response); mi->flags &= ~CAMEL_MESSAGE_FOLDER_FLAGGED; - ((CamelImapMessageInfo *)mi)->server_flags = mi->flags; + ((CamelImapMessageInfo *)mi)->server_flags = + mi->flags & CAMEL_IMAP_SERVER_FLAGS; } static void diff --git a/camel/providers/imap/camel-imap-summary.h b/camel/providers/imap/camel-imap-summary.h index e3ee2ff13b..7ad1e3f4e8 100644 --- a/camel/providers/imap/camel-imap-summary.h +++ b/camel/providers/imap/camel-imap-summary.h @@ -32,6 +32,12 @@ #define CAMEL_IMAP_SUMMARY_CLASS(klass) CAMEL_CHECK_CLASS_CAST (klass, camel_imap_summary_get_type (), CamelImapSummaryClass) #define CAMEL_IS_IMAP_SUMMARY(obj) CAMEL_CHECK_TYPE (obj, camel_imap_summary_get_type ()) +#define CAMEL_IMAP_SERVER_FLAGS (CAMEL_MESSAGE_ANSWERED | \ + CAMEL_MESSAGE_DELETED | \ + CAMEL_MESSAGE_DRAFT | \ + CAMEL_MESSAGE_FLAGGED | \ + CAMEL_MESSAGE_SEEN) + typedef struct _CamelImapSummaryClass CamelImapSummaryClass; typedef struct _CamelImapMessageContentInfo { |