OSDN Git Service

Pull fix from master branch, and correct filename juggling.
authorAndy McFadden <fadden@android.com>
Tue, 5 May 2009 17:45:51 +0000 (10:45 -0700)
committerAndy McFadden <fadden@android.com>
Tue, 5 May 2009 17:45:51 +0000 (10:45 -0700)
The original fix was in p4 144906.  This also corrects some problems that
arise when the temp file is specified.

libdex/CmdUtils.c
libdex/CmdUtils.h

index ca1054c..35ced14 100644 (file)
@@ -97,12 +97,12 @@ bail:
  *
  * If "quiet" is set, don't report common errors.
  *
- * Returns 0 on success.
+ * Returns 0 (kUTFRSuccess) on success.
  */
 UnzipToFileResult dexOpenAndMap(const char* fileName, const char* tempFileName,
     MemMapping* pMap, bool quiet)
 {
-    UnzipToFileResult result = kUTFRSuccess;
+    UnzipToFileResult result = kUTFRGenericFailure;
     int len = strlen(fileName);
     char tempName[32];
     bool removeTemp = false;
@@ -132,11 +132,11 @@ UnzipToFileResult dexOpenAndMap(const char* fileName, const char* tempFileName,
             tempFileName = tempName;
         }
 
-        result = dexUnzipToFile(fileName, tempName, quiet);
+        result = dexUnzipToFile(fileName, tempFileName, quiet);
         
         if (result == kUTFRSuccess) {
             //printf("+++ Good unzip to '%s'\n", tempName);
-            fileName = tempName;
+            fileName = tempFileName;
             removeTemp = true;
         } else if (result == kUTFRNotZip) {
             if (!quiet) {
index fa354a9..e0b0105 100644 (file)
@@ -34,6 +34,7 @@
 /* encode the result of unzipping to a file */
 typedef enum UnzipToFileResult {
     kUTFRSuccess = 0,
+    kUTFRGenericFailure,
     kUTFRBadArgs,
     kUTFRNotZip,
     kUTFRNoClassesDex,