]> git.ipfire.org Git - thirdparty/libarchive.git/commitdiff
Add allocation check for the zip_entry struct. 1019/head
authorDon Meyer <donald.meyer@mellmo.com>
Tue, 15 May 2018 22:05:11 +0000 (15:05 -0700)
committerDon Meyer <donald.meyer@mellmo.com>
Tue, 15 May 2018 22:05:11 +0000 (15:05 -0700)
libarchive/archive_read_support_format_zip.c

index 18f0d04e5c4e3d9617f3d6d7b569b596327b4136..420004dbabbc3a7c92c411b655aca0a657e2d37b 100644 (file)
@@ -2708,6 +2708,11 @@ slurp_central_directory(struct archive_read *a, struct zip *zip)
                        return ARCHIVE_FATAL;
 
                zip_entry = calloc(1, sizeof(struct zip_entry));
+               if (zip_entry == NULL) {
+                       archive_set_error(&a->archive, ENOMEM,
+                               "Can't allocate zip entry");
+                       return ARCHIVE_FATAL;
+               }
                zip_entry->next = zip->zip_entries;
                zip_entry->flags |= LA_FROM_CENTRAL_DIRECTORY;
                zip->zip_entries = zip_entry;