summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Kenny Root <kroot@google.com> 2012-12-11 15:10:47 -0800
committer Android Git Automerger <android-git-automerger@android.com> 2012-12-11 15:10:47 -0800
commitae5cc8687b4fde98449cbec1fd9a610557ff1b5d (patch)
treeeb1c7e954173f3b3b1293e5e0e393fc70fcdf2a8
parent3781523becbb2d576761c2701763ff3588294a97 (diff)
parent2735795f5aa906fbfd885dbacee1de0b41b80bf0 (diff)
am 2735795f: Merge "If freeCache deletes APK, give out of space error" into jb-mr1.1-dev
* commit '2735795f5aa906fbfd885dbacee1de0b41b80bf0': If freeCache deletes APK, give out of space error
-rw-r--r--services/java/com/android/server/pm/PackageManagerService.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/services/java/com/android/server/pm/PackageManagerService.java b/services/java/com/android/server/pm/PackageManagerService.java
index fd649a16b970..2238f17621f1 100644
--- a/services/java/com/android/server/pm/PackageManagerService.java
+++ b/services/java/com/android/server/pm/PackageManagerService.java
@@ -6353,6 +6353,18 @@ public class PackageManagerService extends IPackageManager.Stub {
pkgLite = mContainerService.getMinimalPackageInfo(packageFilePath,
flags, lowThreshold);
}
+ /*
+ * The cache free must have deleted the file we
+ * downloaded to install.
+ *
+ * TODO: fix the "freeCache" call to not delete
+ * the file we care about.
+ */
+ if (pkgLite.recommendedInstallLocation
+ == PackageHelper.RECOMMEND_FAILED_INVALID_URI) {
+ pkgLite.recommendedInstallLocation
+ = PackageHelper.RECOMMEND_FAILED_INSUFFICIENT_STORAGE;
+ }
}
}
} finally {