diff options
author | Varun Shah <varunshah@google.com> | 2023-12-08 19:05:07 +0000 |
---|---|---|
committer | Varun Shah <varunshah@google.com> | 2023-12-08 19:05:07 +0000 |
commit | f045351b1e2693f1c2351d5572537e545027375d (patch) | |
tree | 2868a508715432dd74dee627cbfef3df202dcb56 /apex | |
parent | 0abdb9f1ff4670d3f25333b446a89f3eb07815a7 (diff) | |
download | base-f045351b1e2693f1c2351d5572537e545027375d.tar.gz |
Catch exception when package is unknown.
Bug: 314863695
Test: builds/flashes/boots
Test: atest BackgroundJobsControllerTest
Change-Id: I2a46ba64e7764c4e95547c3a50c999d6132f1b87
Diffstat (limited to 'apex')
-rw-r--r-- | apex/jobscheduler/service/java/com/android/server/job/controllers/BackgroundJobsController.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/apex/jobscheduler/service/java/com/android/server/job/controllers/BackgroundJobsController.java b/apex/jobscheduler/service/java/com/android/server/job/controllers/BackgroundJobsController.java index ad3e422769d5..03891bbec56a 100644 --- a/apex/jobscheduler/service/java/com/android/server/job/controllers/BackgroundJobsController.java +++ b/apex/jobscheduler/service/java/com/android/server/job/controllers/BackgroundJobsController.java @@ -314,9 +314,15 @@ public final class BackgroundJobsController extends StateController { if (mPackageStoppedState.contains(uid, packageName)) { return mPackageStoppedState.get(uid, packageName); } - final boolean isStopped = mPackageManagerInternal.isPackageStopped(packageName, uid); - mPackageStoppedState.add(uid, packageName, isStopped); - return isStopped; + + try { + final boolean isStopped = mPackageManagerInternal.isPackageStopped(packageName, uid); + mPackageStoppedState.add(uid, packageName, isStopped); + return isStopped; + } catch (IllegalArgumentException e) { + Slog.d(TAG, "Couldn't determine stopped state for unknown package: " + packageName); + return false; + } } @GuardedBy("mLock") |