From 3dde2c915e2c68fdda36febac618595561ed87f8 Mon Sep 17 00:00:00 2001 From: Nick Alcock Date: Sat, 13 Jul 2019 20:44:38 +0100 Subject: libctf: fix double-free on ctf_compress_write error path We were freeing the compressed data buffer twice if compression failed. v4: Fix commit message. v5: fix tabdamage. libctf/ * ctf-create.c (ctf_compress_write): Fix double-free. --- libctf/ChangeLog | 4 ++++ libctf/ctf-create.c | 1 - 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'libctf') diff --git a/libctf/ChangeLog b/libctf/ChangeLog index 0493943..9e72d84 100644 --- a/libctf/ChangeLog +++ b/libctf/ChangeLog @@ -1,5 +1,9 @@ 2019-07-13 Nick Alcock + * ctf-create.c (ctf_compress_write): Fix double-free. + +2019-07-13 Nick Alcock + * ctf-archive.c (ctf_arc_write): Split off, and reimplement in terms of... (ctf_arc_write_fd): ... this new function. diff --git a/libctf/ctf-create.c b/libctf/ctf-create.c index 09cd8d5..d75de91 100644 --- a/libctf/ctf-create.c +++ b/libctf/ctf-create.c @@ -1997,7 +1997,6 @@ ctf_compress_write (ctf_file_t *fp, int fd) { ctf_dprintf ("zlib deflate err: %s\n", zError (rc)); err = ctf_set_errno (fp, ECTF_COMPRESS); - ctf_free (buf); goto ret; } -- cgit v1.1