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

Commit ea0c498c authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Ignore access from a different user" into main

parents 55e5d42f 79a4f575
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -538,9 +538,10 @@ class PackageDynamicCodeLoading extends AbstractStatsBase<Void> {
            } else {
                if (fileInfo.mUserId != userId) {
                    // This should be impossible: private app files are always user-specific and
                    // can't be accessed from different users.
                    throw new IllegalArgumentException("Cannot change userId for '" + path
                            + "' from " + fileInfo.mUserId + " to " + userId);
                    // can't be accessed from different users. But it does very occasionally happen
                    // (b/323665257). Ignore such cases - we shouldn't record data from a different
                    // user.
                    return false;
                }
                // Changing file type (i.e. loading the same file in different ways is possible if
                // unlikely. We allow it but ignore it.
+2 −2
Original line number Diff line number Diff line
@@ -106,13 +106,13 @@ public class PackageDynamicCodeLoadingTests {
    }

    @Test
    public void testRecord_changeUserForFile_throws() {
    public void testRecord_changeUserForFile_ignored() {
        Entry entry1 = new Entry("owning.package1", "/path/file1", 'D', 10, "loading.package1");
        Entry entry2 = new Entry("owning.package1", "/path/file1", 'D', 20, "loading.package1");

        PackageDynamicCodeLoading info = makePackageDcl(entry1);

        assertThrows(() -> record(info, entry2));
        assertThat(record(info, entry2)).isFalse();
        assertHasEntries(info, entry1);
    }