mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-21 18:38:08 +01:00
lib: Fix name reordering to handle commas without spaces
Notmuch automatically re-orders names of the format "Last, First" to "First Last" when the associated email address is First.Last@example.com. But, if a name is of the format "Last,First" then notmuch will format the name as "irst Last". Handle any number of spaces after the comma, including none.
This commit is contained in:
parent
a629b2e1cb
commit
f55b35b3df
1 changed files with 10 additions and 2 deletions
|
@ -190,8 +190,16 @@ _thread_cleanup_author (notmuch_thread_t *thread,
|
|||
if (comma && strlen(comma) > 1) {
|
||||
/* let's assemble what we think is the correct name */
|
||||
lname = comma - author;
|
||||
fname = strlen(author) - lname - 2;
|
||||
strncpy(clean_author, comma + 2, fname);
|
||||
|
||||
/* Skip all the spaces after the comma */
|
||||
fname = strlen(author) - lname - 1;
|
||||
comma += 1;
|
||||
while (*comma == ' ') {
|
||||
fname -= 1;
|
||||
comma += 1;
|
||||
}
|
||||
strncpy(clean_author, comma, fname);
|
||||
|
||||
*(clean_author+fname) = ' ';
|
||||
strncpy(clean_author + fname + 1, author, lname);
|
||||
*(clean_author+fname+1+lname) = '\0';
|
||||
|
|
Loading…
Reference in a new issue