Skip to content

Commit 3174bc5

Browse files
rfrancoisepeff
authored andcommitted
mailmap: avoid out-of-bounds memory access
AddressSanitizer (http://clang.llvm.org/docs/AddressSanitizer.html) complains of a one-byte buffer underflow in parse_name_and_email() while running the test suite. And indeed, if one of the lines in the mailmap begins with '<', we dereference the address just before the beginning of the buffer when looking for whitespace to remove, before checking that we aren't going too far. So reverse the order of the tests to make sure that we don't read outside the buffer. Signed-off-by: Romain Francoise <[email protected]> Signed-off-by: Jeff King <[email protected]>
1 parent 7e20105 commit 3174bc5

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

mailmap.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ static char *parse_name_and_email(char *buffer, char **name,
118118
while (isspace(*nstart) && nstart < left)
119119
++nstart;
120120
nend = left-1;
121-
while (isspace(*nend) && nend > nstart)
121+
while (nend > nstart && isspace(*nend))
122122
--nend;
123123

124124
*name = (nstart < nend ? nstart : NULL);

0 commit comments

Comments
 (0)