Do not close the zip archive prematurely. It may be accessed later for a firmware update.

Change-Id: I31c298f75bbcdc7998221aa2b3aa334926343139
diff --git a/install.c b/install.c
index ad2c21d..8194c35 100644
--- a/install.c
+++ b/install.c
@@ -127,10 +127,10 @@
     }
     bool ok = mzExtractZipEntryToFile(zip, binary_entry, fd);
     close(fd);
-    mzCloseZipArchive(zip);
 
     if (!ok) {
         LOGE("Can't copy %s\n", ASSUMED_UPDATE_BINARY_NAME);
+        mzCloseZipArchive(zip);
         return 1;
     }
 
@@ -239,13 +239,13 @@
     waitpid(pid, &status, 0);
     if (!WIFEXITED(status) || WEXITSTATUS(status) != 0) {
         LOGE("Error in %s\n(Status %d)\n", path, WEXITSTATUS(status));
+        mzCloseZipArchive(zip);
         return INSTALL_ERROR;
     }
 
     if (firmware_type != NULL) {
+        mzCloseZipArchive(zip);
         return handle_firmware_update(firmware_type, firmware_filename, zip);
-    } else {
-        return INSTALL_SUCCESS;
     }
     return INSTALL_SUCCESS;
 }