Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2e0e8cf5 authored by Sudheer Shanka's avatar Sudheer Shanka Committed by Android (Google) Code Review
Browse files

Merge "Update shared sandbox directory structure."

parents 5f902a51 31ad0a18
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -3150,10 +3150,10 @@ class StorageManagerService extends IStorageManager.Stub

            if (toSystem) {
                // Everything else goes into sandbox.
                return device + "Android/sandbox/" + sandboxId.replace(':', '/') + "/" + devicePath;
                return device + "Android/sandbox/" + sandboxId + "/" + devicePath;
            } else {
                // Does path belong to this sandbox? If so, leave sandbox.
                final String sandboxPrefix = "Android/sandbox/" + sandboxId.replace(':', '/') + "/";
                final String sandboxPrefix = "Android/sandbox/" + sandboxId + "/";
                if (devicePath.startsWith(sandboxPrefix)) {
                    return device + devicePath.substring(sandboxPrefix.length());
                }
+4 −4
Original line number Diff line number Diff line
@@ -124,7 +124,7 @@ public class StorageManagerServiceTest {
                "/storage/emulated/0/Android/sandbox/com.grey/foo.jpg",
                "/storage/emulated/0/foo.jpg", PKG_GREY);
        assertTranslation(
                "/storage/emulated/0/Android/sandbox/shared/colors/foo.jpg",
                "/storage/emulated/0/Android/sandbox/shared:colors/foo.jpg",
                "/storage/emulated/0/foo.jpg", PKG_RED);
    }

@@ -134,7 +134,7 @@ public class StorageManagerServiceTest {
                "/storage/0000-0000/Android/sandbox/com.grey/foo/bar.jpg",
                "/storage/0000-0000/foo/bar.jpg", PKG_GREY);
        assertTranslation(
                "/storage/0000-0000/Android/sandbox/shared/colors/foo/bar.jpg",
                "/storage/0000-0000/Android/sandbox/shared:colors/foo/bar.jpg",
                "/storage/0000-0000/foo/bar.jpg", PKG_RED);
    }

@@ -147,7 +147,7 @@ public class StorageManagerServiceTest {

        // Accessing other package paths goes into sandbox
        assertTranslation(
                "/storage/emulated/0/Android/sandbox/shared/colors/"
                "/storage/emulated/0/Android/sandbox/shared:colors/"
                        + "Android/data/com.grey/foo.jpg",
                "/storage/emulated/0/Android/data/com.grey/foo.jpg", PKG_RED);
    }
@@ -192,7 +192,7 @@ public class StorageManagerServiceTest {
        // Sandboxes can't see paths in other sandboxes
        try {
            mService.translateSystemToApp(
                    "/storage/emulated/0/Android/sandbox/shared/colors/foo.jpg",
                    "/storage/emulated/0/Android/sandbox/shared:colors/foo.jpg",
                    PKG_GREY, UserHandle.USER_SYSTEM);
            fail();
        } catch (SecurityException expected) {