X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch-index-message.cc;h=913306582e74fc8cd29f778318d2c03e39b3a8cb;hp=1922dd373856a32efb8c0f6f0ac4c857554da4ca;hb=535b14dcba772786541a95db280daf24398aacc5;hpb=be72bf30703c5df814d4f572c3d9132d39700b36 diff --git a/notmuch-index-message.cc b/notmuch-index-message.cc index 1922dd37..91330658 100644 --- a/notmuch-index-message.cc +++ b/notmuch-index-message.cc @@ -139,11 +139,29 @@ gen_terms_address_name (Xapian::TermGenerator term_gen, const char *prefix_name) { const char *name; + int own_name = 0; name = internet_address_get_name (address); + /* In the absence of a name, we'll strip the part before the @ + * from the address. */ + if (! name) { + InternetAddressMailbox *mailbox = INTERNET_ADDRESS_MAILBOX (address); + const char *addr = internet_address_mailbox_get_addr (mailbox); + const char *at; + + at = strchr (addr, '@'); + if (at) { + name = strndup (addr, at - addr); + own_name = 1; + } + } + if (name) gen_terms (term_gen, prefix_name, name); + + if (own_name) + free ((void *) name); } static void