diff options
| -rwxr-xr-x | core/tests/coretests/src/android/content/pm/PackageManagerTests.java | 2 | ||||
| -rw-r--r-- | services/java/com/android/server/PackageManagerService.java | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/core/tests/coretests/src/android/content/pm/PackageManagerTests.java b/core/tests/coretests/src/android/content/pm/PackageManagerTests.java index de3d153fad8a..975a4c2ddc7b 100755 --- a/core/tests/coretests/src/android/content/pm/PackageManagerTests.java +++ b/core/tests/coretests/src/android/content/pm/PackageManagerTests.java @@ -1392,8 +1392,10 @@ public class PackageManagerTests extends AndroidTestCase { assertNotNull(info); if ((moveFlags & PackageManager.MOVE_INTERNAL) != 0) { assertTrue((info.flags & ApplicationInfo.FLAG_EXTERNAL_STORAGE) == 0); + assertTrue(info.nativeLibraryDir.startsWith(info.dataDir)); } else if ((moveFlags & PackageManager.MOVE_EXTERNAL_MEDIA) != 0){ assertTrue((info.flags & ApplicationInfo.FLAG_EXTERNAL_STORAGE) != 0); + assertTrue(info.nativeLibraryDir.startsWith(SECURE_CONTAINERS_PREFIX)); } } } catch (NameNotFoundException e) { diff --git a/services/java/com/android/server/PackageManagerService.java b/services/java/com/android/server/PackageManagerService.java index a2d329802ac3..ab50ba75fe12 100644 --- a/services/java/com/android/server/PackageManagerService.java +++ b/services/java/com/android/server/PackageManagerService.java @@ -9833,6 +9833,7 @@ class PackageManagerService extends IPackageManager.Stub { ps.codePathString = ps.codePath.getPath(); ps.resourcePath = new File(pkg.applicationInfo.publicSourceDir); ps.resourcePathString = ps.resourcePath.getPath(); + ps.nativeLibraryPathString = newNativePath; // Set the application info flag correctly. if ((mp.flags & PackageManager.INSTALL_EXTERNAL) != 0) { pkg.applicationInfo.flags |= ApplicationInfo.FLAG_EXTERNAL_STORAGE; |