]> git.ipfire.org Git - thirdparty/libarchive.git/commitdiff
archive_write_filter_compress: free state in free handler
authorJoerg Sonnenberger <joerg@bec.de>
Sat, 19 Oct 2019 14:59:51 +0000 (16:59 +0200)
committerJoerg Sonnenberger <joerg@bec.de>
Wed, 27 Nov 2019 20:34:32 +0000 (21:34 +0100)
libarchive/archive_write_add_filter_compress.c

index 26fcef4d42bc3e6b740431b870700925756c4ab5..11e879323b7534f84ccb5fee1159615590a4e8e8 100644 (file)
@@ -442,14 +442,15 @@ cleanup:
        ret2 = __archive_write_close_filter(f->next_filter);
        if (ret > ret2)
                ret = ret2;
-       free(state->compressed);
-       free(state);
        return (ret);
 }
 
 static int
 archive_compressor_compress_free(struct archive_write_filter *f)
 {
-       (void)f; /* UNUSED */
+       struct private_data *state = (struct private_data *)f->data;
+
+       free(state->compressed);
+       free(state);
        return (ARCHIVE_OK);
 }