From 4f2a2e9f0e26c1c543d1f282d6e88b3d0f608d07 Mon Sep 17 00:00:00 2001 From: Ben Peart Date: Fri, 5 May 2017 11:28:02 -0400 Subject: convert: update subprocess_read_status() to not die on EOF Enable sub-processes to gracefully handle when the process dies by updating subprocess_read_status to return an error on EOF instead of dying. Update apply_multi_file_filter to take advantage of the revised subprocess_read_status. Signed-off-by: Ben Peart Signed-off-by: Junio C Hamano --- convert.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'convert.c') diff --git a/convert.c b/convert.c index 79d04907a5..f1e168bc30 100644 --- a/convert.c +++ b/convert.c @@ -635,7 +635,10 @@ static int apply_multi_file_filter(const char *path, const char *src, size_t len if (err) goto done; - subprocess_read_status(process->out, &filter_status); + err = subprocess_read_status(process->out, &filter_status); + if (err) + goto done; + err = strcmp(filter_status.buf, "success"); if (err) goto done; @@ -644,7 +647,10 @@ static int apply_multi_file_filter(const char *path, const char *src, size_t len if (err) goto done; - subprocess_read_status(process->out, &filter_status); + err = subprocess_read_status(process->out, &filter_status); + if (err) + goto done; + err = strcmp(filter_status.buf, "success"); done: -- cgit v1.2.3