builtin/apply: handle parse_binary() failure
commit484e77615872b2a62775a6a2dcb1cad0f529c5d3
authorChristian Couder <christian.couder@gmail.com>
Fri, 18 Mar 2016 12:30:41 +0000 (18 13:30 +0100)
committerJunio C Hamano <gitster@pobox.com>
Fri, 1 Apr 2016 17:21:19 +0000 (1 10:21 -0700)
treee1ea714c0b2c1be68adc4d160816f648ed5fa390
parentdb354b7f1be0d6d7b8cd85800f83a1d2d90cc4a5
builtin/apply: handle parse_binary() failure

In parse_binary() there is:

forward = parse_binary_hunk(&buffer, &size, &status, &used);
if (!forward && !status)
/* there has to be one hunk (forward hunk) */
return error(_("unrecognized binary patch at line %d"), linenr-1);

so parse_binary() can return -1, because that's what error() returns.

Also parse_binary_hunk() sets "status" to -1 in case of error and
parse_binary() does "if (status) return status;".

In this case parse_chunk() should not add -1 to the patchsize it computes.
It is better for future libification efforts to make it just return -1.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/apply.c