builtin/apply: read_patch_file() return -1 instead of die()ing

To libify `git apply` functionality we have to signal errors to the
caller instead of die()ing. Let's do that by returning -1 instead of
die()ing in read_patch_file().

Helped-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Christian Couder 2016-08-08 23:03:01 +02:00 committed by Junio C Hamano
parent f07a9f7643
commit 3bee345d7b

View File

@ -335,10 +335,10 @@ static void say_patch_name(FILE *output, const char *fmt, struct patch *patch)
#define SLOP (16)
static void read_patch_file(struct strbuf *sb, int fd)
static int read_patch_file(struct strbuf *sb, int fd)
{
if (strbuf_read(sb, fd, 0) < 0)
die_errno("git apply: failed to read");
return error_errno("git apply: failed to read");
/*
* Make sure that we have some slop in the buffer
@ -347,6 +347,7 @@ static void read_patch_file(struct strbuf *sb, int fd)
*/
strbuf_grow(sb, SLOP);
memset(sb->buf + sb->len, 0, SLOP);
return 0;
}
static unsigned long linelen(const char *buffer, unsigned long size)
@ -4425,7 +4426,8 @@ static int apply_patch(struct apply_state *state,
int res = 0;
state->patch_input_file = filename;
read_patch_file(&buf, fd);
if (read_patch_file(&buf, fd) < 0)
return -128;
offset = 0;
while (offset < buf.len) {
struct patch *patch;