summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@ximian.com>2002-09-15 03:29:41 +0000
committerJeffrey Stedfast <fejj@src.gnome.org>2002-09-15 03:29:41 +0000
commit398850f5e011f4d26df061a2e1a9c638a2f894f5 (patch)
treef28af36b62b32f61583d36afa79e3c018c338180
parentb79c7b2a9f3a2d8fd49a3f9e3f184f642d5006e3 (diff)
downloadevolution-data-server-398850f5e011f4d26df061a2e1a9c638a2f894f5.tar.gz
If header_msgid_decode fails for the content-id field, just grab whatever
2002-09-13 Jeffrey Stedfast <fejj@ximian.com> * camel-mime-part.c (process_header): If header_msgid_decode fails for the content-id field, just grab whatever is between the <>'s (yes, this means that the content-id is invalid - but what can ya do?). Addresses bug #21027.
-rw-r--r--camel/camel-mime-part.c8
-rw-r--r--camel/providers/imap/camel-imap-folder.c2
2 files changed, 6 insertions, 4 deletions
diff --git a/camel/camel-mime-part.c b/camel/camel-mime-part.c
index c7545a6a9..320324701 100644
--- a/camel/camel-mime-part.c
+++ b/camel/camel-mime-part.c
@@ -43,6 +43,7 @@
#include "camel-mime-filter-charset.h"
#include "camel-mime-part.h"
#include "camel-mime-part-utils.h"
+#include "camel-mime-utils.h"
#include "camel-exception.h"
#include "camel-charset-map.h"
#include "string-utils.h"
@@ -235,7 +236,8 @@ process_header(CamelMedium *medium, const char *header_name, const char *header_
case HEADER_CONTENT_ID:
g_free (mime_part->content_id);
if (!(mime_part->content_id = header_msgid_decode (header_value))) {
- header_decode_lwsp (&header_value);
+ while (*header_value && strchr (" \t\r\n", *header_value))
+ header_value++;
if (*header_value == '<') {
p = header_value;
while (*p && *p != '>')
@@ -245,8 +247,8 @@ process_header(CamelMedium *medium, const char *header_name, const char *header_
mime_part->content_id = g_strdup (header_value);
}
- if (mime_part->header_value)
- g_strstrip (mime_part->header_value);
+ if (mime_part->content_id)
+ g_strstrip (mime_part->content_id);
}
break;
case HEADER_ENCODING:
diff --git a/camel/providers/imap/camel-imap-folder.c b/camel/providers/imap/camel-imap-folder.c
index da5966978..09e4f8d8f 100644
--- a/camel/providers/imap/camel-imap-folder.c
+++ b/camel/providers/imap/camel-imap-folder.c
@@ -380,7 +380,7 @@ camel_imap_folder_selected (CamelFolder *folder, CamelImapResponse *response,
camel_imap_folder_changed (folder, exists, NULL, ex);
/* And we're done. */
-}
+}
static void
imap_finalize (CamelObject *object)