aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven Rostedt (VMware) <rostedt@goodmis.org>2019-06-12 14:10:29 -0400
committerSteven Rostedt (VMware) <rostedt@goodmis.org>2019-06-13 10:57:47 -0400
commit7cf07883112fc1e3325addccf9127a815a2786ee (patch)
tree1e482700e6dd8eacd02dc17311c81e2a631b835f
parent31536589783b26c5afc73054c179ac49d3061c9f (diff)
downloadtrace-cmd-7cf07883112fc1e3325addccf9127a815a2786ee.tar.gz
trace-cmd: Check the return of get_file_content() before calling add_reset_file()
If get_file_content() returns NULL, because the file does not exist or for any other reason, it will cause add_reset_file() to trigger a SEGSEGV due to using a NULL pointer. Only call add_reset_file() if get_file_content() actually returns something. Reviewed-by: Slavomir Kaslev <kaslevs@vmware.com> Reviewed-by: Tzvetomir Stoyanov <tstoyanov@vmware.com> Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
-rw-r--r--tracecmd/trace-record.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/tracecmd/trace-record.c b/tracecmd/trace-record.c
index 2d716a81..5dc6f17a 100644
--- a/tracecmd/trace-record.c
+++ b/tracecmd/trace-record.c
@@ -270,8 +270,10 @@ static void reset_save_file(const char *file, int prio)
char *content;
content = get_file_content(file);
- add_reset_file(file, content, prio);
- free(content);
+ if (content) {
+ add_reset_file(file, content, prio);
+ free(content);
+ }
}
/*