diff options
| author | 2023-06-09 22:12:36 +0000 | |
|---|---|---|
| committer | 2023-06-09 22:12:36 +0000 | |
| commit | 0ab1c83c1c04b8b0249881b4a51cdd495aeec730 (patch) | |
| tree | a95b5cb551f9fa3ad3d2dd0e9332c780df046fd2 | |
| parent | e7f818af122f99d1b78e30194c92137073110278 (diff) | |
| parent | 11abd636cd0f7b6a133cf6e42ffed913d7b29e80 (diff) | |
Merge "Prevent race condition" into udc-dev
| -rw-r--r-- | services/core/java/com/android/server/am/ServiceRecord.java | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/am/ServiceRecord.java b/services/core/java/com/android/server/am/ServiceRecord.java index 0f5defbef919..50fe6d71d26e 100644 --- a/services/core/java/com/android/server/am/ServiceRecord.java +++ b/services/core/java/com/android/server/am/ServiceRecord.java @@ -1076,12 +1076,13 @@ final class ServiceRecord extends Binder implements ComponentName.WithComponentN if (app == null) { return; } - if (mBackgroundStartPrivilegesByStartMerged.allowsAny() - || mIsAllowedBgActivityStartsByBinding) { + BackgroundStartPrivileges backgroundStartPrivileges = + getBackgroundStartPrivilegesWithExclusiveToken(); + if (backgroundStartPrivileges.allowsAny()) { // if the token is already there it's safe to "re-add it" - we're dealing with // a set of Binder objects app.addOrUpdateBackgroundStartPrivileges(this, - getBackgroundStartPrivilegesWithExclusiveToken()); + backgroundStartPrivileges); } else { app.removeBackgroundStartPrivileges(this); } |