apply: avoid possible bogus pointer
authorJeff King <peff@peff.net>
Thu, 24 Jul 2014 04:43:23 +0000 (00:43 -0400)
committerJunio C Hamano <gitster@pobox.com>
Thu, 24 Jul 2014 20:57:50 +0000 (13:57 -0700)
commit31bb6d37f992128eca3707d4f58ec61425742e81
treeda51f74412cb4b7134de71c6d44f1dddb7843f34
parent649409b7bccdcd6d6e5273b2b7340cea05f77736
apply: avoid possible bogus pointer

When parsing "index" lines from a git-diff, we look for a
space followed by the mode. If we don't have a space, then
we set our pointer to the end-of-line. However, we don't
double-check that our end-of-line pointer is valid (e.g., if
we got a truncated diff input), which could lead to some
wrap-around pointer arithmetic.

In most cases this would probably get caught by our "40 <
len" check later in the function, but to be on the safe
side, let's just use strchrnul to treat end-of-string the
same as end-of-line.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/apply.c