OSDN Git Service

RESTRICT AUTOMERGE Use consistent calling uid and package in navigateUpTo
authorRiddle Hsu <riddlehsu@google.com>
Tue, 3 Mar 2020 08:29:31 +0000 (16:29 +0800)
committerRiddle Hsu <riddlehsu@google.com>
Wed, 4 Mar 2020 12:52:45 +0000 (12:52 +0000)
commitda78af4d6696dda77c692a7c6f2f49d4277cf341
treef3590c58c9efcb18eec9c353f94d3a15fae4a457
parent835e3a52bb61bdd0ee407c7a5652a9f2f6f56c50
RESTRICT AUTOMERGE Use consistent calling uid and package in navigateUpTo

Originally, if the caller of navigateUpTo is alive, even the calling
uid is set to the caller who launched the existing destination activity,
the uid from caller process has higher priority to replace the given
calling uid. So this change doesn't modify the existing behavior if
the caller process is valid. Besides, the case of delivering new intent
uses the source record as calling identity too, so the case of starting
new activity should be consistent.

Also forbid attaching null application thread to avoid unexpected state
in process record.

Bug: 144285917
Test: atest ActivityStackTests#testNavigateUpTo
Test: atest CtsSecurityTestCases:ActivityManagerTest# \
      testActivityManager_attachNullApplication
Change-Id: I60732f430256d37cb926d08d093581f051c4afed
services/core/java/com/android/server/am/ActivityManagerService.java
services/core/java/com/android/server/am/ActivityStack.java
services/tests/servicestests/src/com/android/server/am/ActivityStackTests.java
services/tests/servicestests/src/com/android/server/am/ActivityTestsBase.java