Check whether or not we have mlist info in our summary.
authorJeffrey Stedfast <fejj@novell.com>
Wed, 26 Jan 2005 21:40:39 +0000 (21:40 +0000)
committerJeffrey Stedfast <fejj@src.gnome.org>
Wed, 26 Jan 2005 21:40:39 +0000 (21:40 +0000)
2005-01-26  Jeffrey Stedfast  <fejj@novell.com>

* providers/imap4/camel-imap4-summary.c (imap4_header_load): Check
whether or not we have mlist info in our summary.
(imap4_header_save): Save have_mlist.
(camel_imap4_summary_flush_updates): Modified to clear the summary
and do a complete refetch if enable_mlist has been newly enabled
and we don't already have mlist info in our summary info's.
(imap4_fetch_all_add): If the \Recent flag is set, also add it to
the "recent" changes structure so the filetr code knows to filter
it.

camel/ChangeLog
camel/providers/imap4/camel-imap4-summary.c

index 6b58578..3d80265 100644 (file)
@@ -6,6 +6,9 @@
        (camel_imap4_summary_flush_updates): Modified to clear the summary
        and do a complete refetch if enable_mlist has been newly enabled
        and we don't already have mlist info in our summary info's.
+       (imap4_fetch_all_add): If the \Recent flag is set, also add it to
+       the "recent" changes structure so the filetr code knows to filter
+       it.
 
 2005-01-25  Jeffrey Stedfast  <fejj@novell.com>
 
index 8495669..e4f1efe 100644 (file)
@@ -752,19 +752,22 @@ imap4_fetch_all_add (struct imap4_fetch_all_t *fetch)
                
                if (envelope->changed != IMAP4_FETCH_ALL) {
                        d(fprintf (stderr, "Hmmm, IMAP4 server didn't give us everything for message %d\n", i + 1));
-                       camel_message_info_free(envelope->info);
+                       camel_message_info_free (envelope->info);
                        g_free (envelope);
                        continue;
                }
                
                if ((info = camel_folder_summary_uid (fetch->summary, camel_message_info_uid (envelope->info)))) {
-                       camel_message_info_free(envelope->info);
+                       camel_message_info_free (envelope->info);
                        g_free (envelope);
                        continue;
                }
                
                camel_folder_change_info_add_uid (changes, camel_message_info_uid (envelope->info));
                
+               if ((((CamelMessageInfoBase *) info)->flags & CAMEL_IMAP4_MESSAGE_RECENT))
+                       camel_folder_change_info_recent_uid (changes, camel_message_info_uid (envelope->info));
+               
                camel_folder_summary_add (fetch->summary, envelope->info);
                g_free (envelope);
        }