From 5f98b12640af0fd937c1cd5929248f8f01779922 Mon Sep 17 00:00:00 2001 From: Mathieu Chartier Date: Tue, 4 Mar 2014 17:39:38 -0800 Subject: Add free to CloseArchive. Currently CloseArchive doesn't call free and call sites don't appear to either. I could not find any call sites which manually freed the archive by deleting the handle. This fixes several memory leaks. Change-Id: I21f187dde60fd87e6e54bde06de9e76fd0791104 --- libziparchive/zip_archive.cc | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'libziparchive') diff --git a/libziparchive/zip_archive.cc b/libziparchive/zip_archive.cc index 8ef0962..01f9249 100644 --- a/libziparchive/zip_archive.cc +++ b/libziparchive/zip_archive.cc @@ -591,13 +591,7 @@ void CloseArchive(ZipArchiveHandle handle) { archive->directory_map->release(); } free(archive->hash_table); - - /* ensure nobody tries to use the ZipArchive after it's closed */ - archive->directory_offset = -1; - archive->fd = -1; - archive->num_entries = -1; - archive->hash_table_size = -1; - archive->hash_table = NULL; + free(archive); } static int32_t UpdateEntryFromDataDescriptor(int fd, -- cgit v1.1