Web lists-archives.com

[PATCH] tools: firewire: nosy-dump: fix a resource leak in main()




If option_input and option_output is true two files are opened
consecutively. In case the second fopen() fails, let's fclose()
the first one before returning early.

Signed-off-by: Martin Kepplinger <martink@xxxxxxxxx>
---
 tools/firewire/nosy-dump.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tools/firewire/nosy-dump.c b/tools/firewire/nosy-dump.c
index 3179c711bd65..228be406f206 100644
--- a/tools/firewire/nosy-dump.c
+++ b/tools/firewire/nosy-dump.c
@@ -960,6 +960,8 @@ int main(int argc, const char *argv[])
 		output = fopen(option_output, "w");
 		if (output == NULL) {
 			fprintf(stderr, "Could not open %s, %m\n", option_output);
+			if (input)
+				fclose(input);
 			return -1;
 		}
 	}
-- 
2.11.0