summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> 2023-08-03 07:57:53 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-08-03 07:57:53 +0000
commit499f2ff0ebffd8f0ef25e78a28ea1939d0c3babb (patch)
treeb9af9a4606316b4407b5743d02f46a5e90404e8f
parentf63e52db446ff1a85a0f57c16312858a3bdad3b1 (diff)
parenta67147a4a4d434291d2040fb38b667e9c0404e31 (diff)
Merge "Add null check for session_info." into udc-qpr-dev
-rw-r--r--packages/PackageInstaller/src/com/android/packageinstaller/InstallStart.java11
1 files changed, 9 insertions, 2 deletions
diff --git a/packages/PackageInstaller/src/com/android/packageinstaller/InstallStart.java b/packages/PackageInstaller/src/com/android/packageinstaller/InstallStart.java
index 229b7a73a2a3..15446b6cc39b 100644
--- a/packages/PackageInstaller/src/com/android/packageinstaller/InstallStart.java
+++ b/packages/PackageInstaller/src/com/android/packageinstaller/InstallStart.java
@@ -279,9 +279,16 @@ public class InstallStart extends Activity {
}
private boolean isCallerSessionOwner(int originatingUid, int sessionId) {
+ if (originatingUid == Process.ROOT_UID) {
+ return true;
+ }
PackageInstaller packageInstaller = getPackageManager().getPackageInstaller();
- int installerUid = packageInstaller.getSessionInfo(sessionId).getInstallerUid();
- return (originatingUid == Process.ROOT_UID) || (originatingUid == installerUid);
+ PackageInstaller.SessionInfo sessionInfo = packageInstaller.getSessionInfo(sessionId);
+ if (sessionInfo == null) {
+ return false;
+ }
+ int installerUid = sessionInfo.getInstallerUid();
+ return originatingUid == installerUid;
}
private void checkDevicePolicyRestriction() {