Return-Path: X-Original-To: notmuch@notmuchmail.org Delivered-To: notmuch@notmuchmail.org Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id 0B84E431FB6 for ; Fri, 21 Nov 2014 07:47:18 -0800 (PST) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: -2.3 X-Spam-Level: X-Spam-Status: No, score=-2.3 tagged_above=-999 required=5 tests=[RCVD_IN_DNSWL_MED=-2.3] autolearn=disabled Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vxjEbggcTaiw for ; Fri, 21 Nov 2014 07:47:11 -0800 (PST) Received: from smtpauth.johnshopkins.edu (smtpauth.johnshopkins.edu [162.129.8.200]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by olra.theworths.org (Postfix) with ESMTPS id 8E25F431FAE for ; Fri, 21 Nov 2014 07:47:11 -0800 (PST) X-IronPort-AV: E=Sophos;i="5.07,432,1413259200"; d="scan'208";a="448181124" Received: from guppy.hwcampus.jhu.edu (HELO localhost) ([10.161.32.234]) by IPEB3.johnshopkins.edu with ESMTP/TLS/AES128-SHA; 21 Nov 2014 10:47:09 -0500 From: Jesse Rosenthal To: notmuch@notmuchmail.org Subject: [PATCH 1/2] lib: Use email address instead of empty real name. Date: Fri, 21 Nov 2014 10:46:43 -0500 Message-Id: <1416584803-24018-1-git-send-email-jrosenthal@jhu.edu> X-Mailer: git-send-email 2.1.3 X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Nov 2014 15:47:18 -0000 Currently, if a From-header is of the form: "" the empty string will be treated as a valid real-name, and the entry in the search results will be empty. The new behavior here is that we treat an empty real-name field as if it were null, so that the email address will be used in the search results instead. Signed-off-by: Jesse Rosenthal --- lib/thread.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/thread.cc b/lib/thread.cc index 8922403..68b2b94 100644 --- a/lib/thread.cc +++ b/lib/thread.cc @@ -277,7 +277,8 @@ _thread_add_message (notmuch_thread_t *thread, address = internet_address_list_get_address (list, 0); if (address) { author = internet_address_get_name (address); - if (author == NULL) { + // We treat quoted empty names as if they were empty. + if (author == NULL || author[0]=='\0' ) { InternetAddressMailbox *mailbox; mailbox = INTERNET_ADDRESS_MAILBOX (address); author = internet_address_mailbox_get_addr (mailbox); -- 2.1.3 >From 90fd4673e08fccef95dcc0050bdcac3773d336a9 Mon Sep 17 00:00:00 2001 From: Jesse Rosenthal Date: Fri, 21 Nov 2014 10:24:16 -0500 Subject: [PATCH 2/2] test: Add test for correct naming of author. This is a new test file, since handling of unusual email addresses doesn't seem to fit well in any of our existing tests. Signed-off-by: Jesse Rosenthal --- test/T205-author-naming.sh | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100755 test/T205-author-naming.sh diff --git a/test/T205-author-naming.sh b/test/T205-author-naming.sh new file mode 100755 index 0000000..cb678ae --- /dev/null +++ b/test/T205-author-naming.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash +test_description="naming of authors with unusual addresses" +. ./test-lib.sh + +test_begin_subtest "Add author with empty quoted real name" +add_message '[subject]="author-naming: Initial thread subject"' \ + '[date]="Fri, 05 Jan 2001 15:43:56 -0000"' \ + '[from]="\"\" "' +output=$(notmuch search --sort=oldest-first author-naming and tag:inbox | notmuch_search_sanitize) +test_expect_equal "$output" "thread:XXX 2001-01-05 [1/1] address@example.com; author-naming: Initial thread subject (inbox unread)" + +test_done -- 2.1.3