From fb628cad068f86ec557c9e5491902c26455f0033 Mon Sep 17 00:00:00 2001 From: Kurt Huwig Date: Fri, 4 Apr 2014 10:04:24 +0200 Subject: [PATCH] Fixed segfault when input file has not been found file_in is initialized with stdin. When opening it, a failure is indicated by the NULL value assigned to file_in. The application then tries to close the NULL file descriptor as it is not equal to stdin which gives a segmentation fault. This patch adds a check if the file descriptor is NULL and does not try to close it if this is the case. --- gpx-main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gpx-main.c b/gpx-main.c index 6663cec..7d5505b 100644 --- a/gpx-main.c +++ b/gpx-main.c @@ -52,9 +52,9 @@ static int sio_port = -1; static void exit_handler(void) { // close open files - if(file_in != stdin) { + if(file_in != stdin && file_in != NULL) { fclose(file_in); - if(file_out != stdout) { + if(file_out != stdout && file_out != NULL) { if(ferror(file_out)) { perror("Error writing to output file"); }