changeset 1030:a76056297006

Oops.
author Matti Hamalainen <ccr@tnsp.org>
date Sun, 01 Mar 2015 16:20:44 +0200
parents c88b879c735c
children f7863608d84c
files src/dmpack.c
diffstat 1 files changed, 6 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/dmpack.c	Sun Mar 01 16:14:03 2015 +0200
+++ b/src/dmpack.c	Sun Mar 01 16:20:44 2015 +0200
@@ -98,8 +98,8 @@
         !dm_fread_le32(pack->file, &hdr.dirEntries) ||
         !dm_fread_le32(pack->file, &hdr.dirOffset))
     {
-        dmPackClose(pack);
-        return DMERR_FREAD;
+        ret = DMERR_FREAD;
+        goto out;
     }
 
     // Check information
@@ -148,6 +148,10 @@
         if (entry->size == 0 || entry->length == 0 ||
             entry->length > hdr.dirOffset ||
             entry->offset > hdr.dirOffset)
+        {
+            ret = DMERR_INVALID;
+            goto out;
+        }
 
         // Insert into list
         dmPackEntryInsert(&pack->entries, entry);