mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-21 18:38:08 +01:00
notmuch-index-message: Use local-part of email addres in lieu of name.
If there's no name given, take the portion of the email addres before the '@' sign. One step closer to matching sup's terms in the database.
This commit is contained in:
parent
be72bf3070
commit
535b14dcba
1 changed files with 18 additions and 0 deletions
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue