From: Carl Worth Date: Tue, 20 Oct 2009 16:52:01 +0000 (-0700) Subject: notmuch_message_get_header: Fix bogus return of NULL header. X-Git-Tag: 0.1~820 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=ed6ee7330d28c65cb3990cbe4a5ac6182bf23402;p=notmuch.git notmuch_message_get_header: Fix bogus return of NULL header. A simple bug meant that the correct value was being inserted into the hash table, but a NULL value would be returned in some cases. (If the value was already in the hash table at the beginning of the call the the correct value would be returned, but if the function had to parse to reach it then it would return NULL.) This was tripping up the recently-added code to ignore messages with NULL From:, Subject:, and To: headers, (which is fortunate since otherwise the broken parsing might have stayed hidden for longer). --- diff --git a/message.c b/message.c index 1a5994ff..bd551ccd 100644 --- a/message.c +++ b/message.c @@ -273,8 +273,9 @@ notmuch_message_get_header (notmuch_message_t *message, match = (strcasecmp (header, header_desired) == 0); - g_hash_table_insert (message->headers, header, - xstrdup (message->value.str)); + value = xstrdup (message->value.str); + + g_hash_table_insert (message->headers, header, value); if (match) return value;