Forráskód Böngészése

trace: free memory allocated by blobmsg_format_json_indent()

Only one out of two occurances have been addressed previously.
Close the other one now.

Coverity CID: 1446205
Fixes: 51f1cd23 ("trace: free string returned by blobmsg_format_json_indent()")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Daniel Golle 2 éve
szülő
commit
e5b38fd129
1 módosított fájl, 6 hozzáadás és 2 törlés
  1. 6 2
      trace/trace.c

+ 6 - 2
trace/trace.c

@@ -162,7 +162,12 @@ static void print_syscalls(int policy, const char *json)
 	if (json) {
 		FILE *fp = fopen(json, "w");
 		if (fp) {
-			fprintf(fp, "%s\n", blobmsg_format_json_indent(b.head, true, 0));
+			tmp = blobmsg_format_json_indent(b.head, true, 0);
+			if (!tmp)
+				return;
+
+			free(tmp);
+			fprintf(fp, "%s\n", tmp);
 			fclose(fp);
 			ULOG_INFO("saving syscall trace to %s\n", json);
 		} else {
@@ -176,7 +181,6 @@ static void print_syscalls(int policy, const char *json)
 		printf("%s\n", tmp);
 		free(tmp);
 	}
-
 }
 
 static void report_seccomp_vialation(pid_t pid, unsigned syscall)