X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=mailmap.c;h=bb1f2fb711a588d2af0d61decbd4b3eb2f2aebbe;hb=33016c491367c5144b3007927cd76492ac193d16;hp=f12bb45a3f734e48f003a7a2943d168c26778603;hpb=2fb9c421e156b40a40bf65479179f9fb9a63fb1e;p=git.git diff --git a/mailmap.c b/mailmap.c index f12bb45a3..bb1f2fb71 100644 --- a/mailmap.c +++ b/mailmap.c @@ -50,6 +50,15 @@ static void add_mapping(struct string_list *map, { struct mailmap_entry *me; int index; + char *p; + + if (old_email) + for (p = old_email; *p; p++) + *p = tolower(*p); + if (new_email) + for (p = new_email; *p; p++) + *p = tolower(*p); + if (old_email == NULL) { old_email = new_email; new_email = NULL; @@ -90,7 +99,8 @@ static void add_mapping(struct string_list *map, old_name, old_email, new_name, new_email); } -static char *parse_name_and_email(char *buffer, char **name, char **email) +static char *parse_name_and_email(char *buffer, char **name, + char **email, int allow_empty_email) { char *left, *right, *nstart, *nend; *name = *email = 0; @@ -99,7 +109,7 @@ static char *parse_name_and_email(char *buffer, char **name, char **email) return NULL; if ((right = strchr(left+1, '>')) == NULL) return NULL; - if (left+1 == right) + if (!allow_empty_email && (left+1 == right)) return NULL; /* remove whitespace from beginning and end of name */ @@ -150,8 +160,8 @@ static int read_single_mailmap(struct string_list *map, const char *filename, ch } continue; } - if ((name2 = parse_name_and_email(buffer, &name1, &email1)) != NULL) - parse_name_and_email(name2, &name2, &email2); + if ((name2 = parse_name_and_email(buffer, &name1, &email1, 0)) != NULL) + parse_name_and_email(name2, &name2, &email2, 1); if (email1) add_mapping(map, name1, email1, name2, email2);