diff mbox series

libtracecmd: Free buf_from in error path of tracecmd_compress_copy_from()

Message ID 20230602035815.43904076@rorschach.local.home (mailing list archive)
State Accepted
Commit d7ce897734a9046b28866a13d12e78e9d492c72a
Headers show
Series libtracecmd: Free buf_from in error path of tracecmd_compress_copy_from() | expand

Commit Message

Steven Rostedt June 2, 2023, 7:58 a.m. UTC
From: "Steven Rostedt (Google)" <rostedt@goodmis.org>

The failure of allocating buf_to returns without freeing buf_from.

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>
---
 lib/trace-cmd/trace-compress.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/lib/trace-cmd/trace-compress.c b/lib/trace-cmd/trace-compress.c
index ca6e03b88e69..e550dbd4b0d5 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);