From 331edd6b1905d49016b2cb5df8c1eba002cdc415 Mon Sep 17 00:00:00 2001 From: "Timothy B. Terriberry" Date: Fri, 16 Jul 2010 09:33:44 -0700 Subject: [PATCH] Fix oggz-dump -r segfault when input doesn't exist The return value of fopen() simply wasn't being checked. --- src/tools/oggz-dump.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/tools/oggz-dump.c b/src/tools/oggz-dump.c index 5d508b5..241a1fa 100644 --- a/src/tools/oggz-dump.c +++ b/src/tools/oggz-dump.c @@ -403,6 +403,17 @@ revert_file (char * infilename) infile = fopen (infilename, "rb"); } + if (infile == NULL) { + if (errno == 0) { + fprintf (stderr, "%s: %s: error opening input file\n", + progname, infilename); + } else { + fprintf (stderr, "%s: %s: %s\n", + progname, infilename, strerror (errno)); + } + exit(1); + } + oggz = oggz_new (OGGZ_WRITE|OGGZ_NONSTRICT|OGGZ_AUTO); if (oggz == NULL) exit_out_of_memory(); -- GitLab