apply: use starts_with() in gitdiff_verify_name()

Avoid running over the end of line -- a C string whose length is not known to this function -- by using starts_with() instead of memcmp(3) for checking if it starts with "/dev/null". Also simply include the newline in the string constant to compare against. Drop a comment that just states the obvious. Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>

René Scharfe committed Jul 1, 2017 at 11:10 UTC 8bc172e5f29894d440aab772ae3a49eb2eaf5585
1 file changed +1 -2
apply.c
+1 -2
@@ -970,8 +970,7 @@ static int gitdiff_verify_name(struct apply_state *state,
970 }
971 free(another);
972 } else {
973 - /* expect "/dev/null" */
974 - if (memcmp("/dev/null", line, 9) || line[9] != '\n')
973 + if (!starts_with(line, "/dev/null\n"))
974 return error(_("git apply: bad git-diff - expected /dev/null on line %d"), state->linenr);
975 }
976