Some IMAP Servers doesnt return headers if there is more than one
authorSankar P <psankar@novell.com>
Tue, 30 Jan 2007 11:51:20 +0000 (11:51 +0000)
committerSankarasivasubramanian Pasupathilingam <psankar@src.gnome.org>
Tue, 30 Jan 2007 11:51:20 +0000 (11:51 +0000)
2007-01-30  Sankar P  <psankar@novell.com>

* camel-imap-folder.c: (imap_update_summary):
Some IMAP Servers doesnt return headers if there
is more than one consecutive space in the HEADER string.

svn path=/trunk/; revision=7596

camel/providers/imap/ChangeLog
camel/providers/imap/camel-imap-folder.c

index 559599b..d5d78d1 100644 (file)
@@ -1,3 +1,9 @@
+2007-01-30  Sankar P  <psankar@novell.com>
+
+       * camel-imap-folder.c: (imap_update_summary):
+       Some IMAP Servers doesnt return headers if there
+       is more than one consecutive space in the HEADER string. 
+
 2007-01-22  Sankar P  <psankar@novell.com>
 
        * camel-imap-folder.c: (imap_update_summary):
index 4164e2e..56c869e 100644 (file)
@@ -2351,6 +2351,7 @@ imap_update_summary (CamelFolder *folder, int exists,
                if (store->headers == IMAP_FETCH_ALL_HEADERS)
                        header_spec = g_string_new ("HEADER");
                else {
+                       gchar *temp;
                        header_spec = g_string_new ("HEADER.FIELDS (");
                        header_spec = g_string_append (header_spec, CAMEL_MESSAGE_INFO_HEADERS);
                        if (store->headers == IMAP_FETCH_MAILING_LIST_HEADERS)
@@ -2358,10 +2359,16 @@ imap_update_summary (CamelFolder *folder, int exists,
                        if (store->custom_headers)
                                header_spec = g_string_append (header_spec, store->custom_headers);
 
-                       header_spec = g_string_append (header_spec, " )");
+                       temp = g_strdup(header_spec->str);
+                       temp = g_strstrip (temp);
+                       header_spec = g_string_new (temp);
+                       g_free (temp);
+                       header_spec = g_string_append (header_spec, ")");
                }
        } else
                header_spec = g_string_new ("0");
+
+       g_print ("\n\a Header string finally is ********** \n%s\n", header_spec->str);
        
        /* Figure out if any of the new messages are already cached (which
         * may be the case if we're re-syncing after disconnected operation).