From: Matheus Izvekov Date: Tue, 19 Jan 2010 01:34:29 +0000 (-0200) Subject: diff: don't exit in case we can't open input files. -2 bytes X-Git-Tag: 1_16_0~21 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=94a6fd1eeb185f8fea5c0906553552fb2a8aa8d0;p=oweals%2Fbusybox.git diff: don't exit in case we can't open input files. -2 bytes >>From d4cf19d20596bca797d58563f4404cf6a4932977 Mon Sep 17 00:00:00 2001 From: Matheus Izvekov Date: Mon, 18 Jan 2010 23:27:56 -0200 Subject: [PATCH] diff: don't exit in case we can't open input files This prevents recursion being aborted due to failures to open files. Signed-off-by: Matheus Izvekov Signed-off-by: Denys Vlasenko --- diff --git a/editors/diff.c b/editors/diff.c index b7a13871a..91109821e 100644 --- a/editors/diff.c +++ b/editors/diff.c @@ -671,14 +671,14 @@ static bool diff(FILE* fp[2], char *file[2]) static int diffreg(char *file[2]) { - FILE *fp[2]; + FILE *fp[2] = { stdin, stdin }; bool binary = false, differ = false; int status = STATUS_SAME; for (int i = 0; i < 2; i++) { int fd = open_or_warn_stdin(file[i]); if (fd == -1) - xfunc_die(); + goto out; /* Our diff implementation is using seek. * When we meet non-seekable file, we must make a temp copy. */ @@ -725,7 +725,7 @@ static int diffreg(char *file[2]) } if (status != STATUS_SAME) exit_status |= 1; - +out: fclose_if_not_stdin(fp[0]); fclose_if_not_stdin(fp[1]);