From d38a0e345a95adfeca03404ea8c0a52c09edd012 Mon Sep 17 00:00:00 2001 From: Andrew Borodin Date: Fri, 31 Aug 2012 11:08:13 +0400 Subject: [PATCH] Don't close file and pipe that were not opened. Signed-off-by: Andrew Borodin --- src/diffviewer/ydiff.c | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/src/diffviewer/ydiff.c b/src/diffviewer/ydiff.c index 16b90df26..e44c23aac 100644 --- a/src/diffviewer/ydiff.c +++ b/src/diffviewer/ydiff.c @@ -480,10 +480,14 @@ f_trunc (FBUF * fs) static int f_close (FBUF * fs) { - int rv; + int rv = -1; + + if (fs != NULL) + { + rv = close (fs->fd); + f_free (fs); + } - rv = close (fs->fd); - f_free (fs); return rv; } @@ -541,14 +545,19 @@ p_open (const char *cmd, int flags) static int p_close (FBUF * fs) { - int rv; + int rv = -1; + + if (fs != NULL) + { + rv = pclose (fs->data); + f_free (fs); + } - rv = pclose (fs->data); - f_free (fs); return rv; } /* --------------------------------------------------------------------------------------------- */ + /** * Get one char (byte) from string * -- 2.11.4.GIT