diff options
| author | 2010-05-18 13:16:13 -0700 | |
|---|---|---|
| committer | 2010-05-18 13:16:13 -0700 | |
| commit | aa4db173a2465d74ea35cc7f736f6b2a5b01f72c (patch) | |
| tree | bfe0eea8ac30d0eb21b3dfd121b30a521d99a5d3 | |
| parent | 3aecdb9d7e92b1a91860600feefb5c0062b652cf (diff) | |
| parent | 9a212adcffbc4b32d51f512889b33ba584647aa9 (diff) | |
am 9a212adc: Fix 2641875 Initialize the cache path only if the container exists. This did exist before but was somehow removed. Fix a known test failure as well.
Merge commit '9a212adcffbc4b32d51f512889b33ba584647aa9' into froyo-plus-aosp
* commit '9a212adcffbc4b32d51f512889b33ba584647aa9':
Fix 2641875
| -rwxr-xr-x | core/tests/coretests/src/android/content/pm/PackageManagerTests.java | 5 | ||||
| -rw-r--r-- | services/java/com/android/server/PackageManagerService.java | 4 |
2 files changed, 6 insertions, 3 deletions
diff --git a/core/tests/coretests/src/android/content/pm/PackageManagerTests.java b/core/tests/coretests/src/android/content/pm/PackageManagerTests.java index 5571341ed6c0..c1e4d72068fc 100755 --- a/core/tests/coretests/src/android/content/pm/PackageManagerTests.java +++ b/core/tests/coretests/src/android/content/pm/PackageManagerTests.java @@ -1444,7 +1444,7 @@ public class PackageManagerTests extends AndroidTestCase { int result = PackageManager.MOVE_FAILED_FORWARD_LOCKED; sampleMoveFromRawResource(installFlags, moveFlags, fail, result); } - //TODO: To be reenabled after investigation + @MediumTest public void testMoveAppFailInternalToExternalDelete() { int installFlags = 0; int moveFlags = PackageManager.MOVE_EXTERNAL_MEDIA; @@ -1461,7 +1461,8 @@ public class PackageManagerTests extends AndroidTestCase { ip = installFromRawResource("install.apk", R.raw.install, installFlags, false, false, -1, PackageInfo.INSTALL_LOCATION_UNSPECIFIED); // Delete the package now retaining data. - pm.deletePackage(ip.pkg.packageName, null, PackageManager.DONT_DELETE_DATA); + GenericReceiver receiver = new DeleteReceiver(ip.pkg.packageName); + invokeDeletePackage(ip.pkg.packageName, PackageManager.DONT_DELETE_DATA, receiver); assertTrue(invokeMovePackageFail(ip.pkg.packageName, moveFlags, result)); } catch (Exception e) { failStr(e); diff --git a/services/java/com/android/server/PackageManagerService.java b/services/java/com/android/server/PackageManagerService.java index b646a24e30d0..df93215610e7 100644 --- a/services/java/com/android/server/PackageManagerService.java +++ b/services/java/com/android/server/PackageManagerService.java @@ -5057,7 +5057,8 @@ class PackageManagerService extends IPackageManager.Stub { } } - private InstallArgs createInstallArgs(Uri packageURI, int flags, String pkgName) { + private InstallArgs createInstallArgs(Uri packageURI, int flags, + String pkgName) { if (installOnSd(flags)) { String cid = getNextCodePath(null, pkgName, "/" + SdInstallArgs.RES_FILE_NAME); return new SdInstallArgs(packageURI, cid); @@ -5317,6 +5318,7 @@ class PackageManagerService extends IPackageManager.Stub { SdInstallArgs(String cid) { super(null, null, PackageManager.INSTALL_EXTERNAL, null); this.cid = cid; + cachePath = PackageHelper.getSdDir(cid); } SdInstallArgs(Uri packageURI, String cid) { |