log: fix memory leak when log to file is enabled
[fw/openocd] / src / helper / log.c
index caa0a66bf64707b2d94d3519d489d9687fa328b9..6865607423f1e025771ab42803dc15608f8c5cf1 100644 (file)
@@ -302,6 +302,15 @@ void log_init(void)
        start = last_time = timeval_ms();
 }
 
+void log_exit(void)
+{
+       if (log_output && log_output != stderr) {
+               /* Close log file, if it was open and wasn't stderr. */
+               fclose(log_output);
+       }
+       log_output = NULL;
+}
+
 int set_log_output(struct command_context *cmd_ctx, FILE *output)
 {
        log_output = output;