Merge "Fix the concurrency issue when 'linkToDeath' in AccountManagerService that leads to JE" into main am: e7627bd732 am: b6c6ce7ee6 am: 923b35a933 am: 56180b3fb3

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2664259

Change-Id: I28e19b2999ec46a093cebfa41762375ea0535847
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Dmitry Dementyev
2023-07-21 22:41:00 +00:00
committed by Automerger Merge Worker

View File

@@ -4905,7 +4905,6 @@ public class AccountManagerService
if (accountType == null) throw new IllegalArgumentException("accountType is null"); if (accountType == null) throw new IllegalArgumentException("accountType is null");
mAccounts = accounts; mAccounts = accounts;
mStripAuthTokenFromResult = stripAuthTokenFromResult; mStripAuthTokenFromResult = stripAuthTokenFromResult;
mResponse = response;
mAccountType = accountType; mAccountType = accountType;
mExpectActivityLaunch = expectActivityLaunch; mExpectActivityLaunch = expectActivityLaunch;
mCreationTime = SystemClock.elapsedRealtime(); mCreationTime = SystemClock.elapsedRealtime();
@@ -4919,8 +4918,8 @@ public class AccountManagerService
if (response != null) { if (response != null) {
try { try {
response.asBinder().linkToDeath(this, 0 /* flags */); response.asBinder().linkToDeath(this, 0 /* flags */);
mResponse = response;
} catch (RemoteException e) { } catch (RemoteException e) {
mResponse = null;
binderDied(); binderDied();
} }
} }