aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven Rostedt (Google) <rostedt@goodmis.org>2023-06-02 03:58:15 -0400
committerSteven Rostedt (Google) <rostedt@goodmis.org>2023-06-05 15:29:45 -0400
commitd7ce897734a9046b28866a13d12e78e9d492c72a (patch)
tree125ccb2875444465a51715aaaa8f9c72b9c931ed
parent6776d7af303beaf2c39c67d2443c88987900c387 (diff)
downloadtrace-cmd-d7ce897734a9046b28866a13d12e78e9d492c72a.tar.gz
libtracecmd: Free buf_from in error path of tracecmd_compress_copy_from()
The failure of allocating buf_to returns without freeing buf_from. Link: https://lore.kernel.org/linux-trace-devel/20230602035815.43904076@rorschach.local.home Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=217127 Reported-by: Markus Elfring <Markus.Elfring@web.de> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
-rw-r--r--lib/trace-cmd/trace-compress.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/trace-cmd/trace-compress.c b/lib/trace-cmd/trace-compress.c
index ca6e03b8..e550dbd4 100644
--- a/lib/trace-cmd/trace-compress.c
+++ b/lib/trace-cmd/trace-compress.c
@@ -696,8 +696,10 @@ int tracecmd_compress_copy_from(struct tracecmd_compression *handle, int fd, int
return -1;
buf_to = malloc(csize);
- if (!buf_to)
+ if (!buf_to) {
+ free(buf_from);
return -1;
+ }
/* save the initial offset and write 0 as initial chunk count */
offset = lseek(handle->fd, 0, SEEK_CUR);