diff options
| author | 2020-03-12 14:51:56 +0000 | |
|---|---|---|
| committer | 2020-03-12 15:21:39 +0000 | |
| commit | 1f3fab1a37f5fe64fbded0ee30e3ec3880907f6c (patch) | |
| tree | 4022e50a7b6d831af3e3741bf0419b98d1d2d353 | |
| parent | 5580360ba832eebd7f7f63817d818987b5cb72c4 (diff) | |
Fix deadlock of starting intent during turing on profile
Start the intent on a handler thread instead of the user start
progress callback.
Bug: 149220125
Test: atest QuietModeHostsideTest
Test: turning on profile by tapping on some app launcher icon
Change-Id: I44bc862c1d72aae3d2d79862c92ddbe4d3a58483
| -rw-r--r-- | services/core/java/com/android/server/pm/UserManagerService.java | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/services/core/java/com/android/server/pm/UserManagerService.java b/services/core/java/com/android/server/pm/UserManagerService.java index df3c83aec85a..7d0993b0ca0e 100644 --- a/services/core/java/com/android/server/pm/UserManagerService.java +++ b/services/core/java/com/android/server/pm/UserManagerService.java @@ -455,11 +455,13 @@ public class UserManagerService extends IUserManager.Stub { @Override public void onFinished(int id, Bundle extras) { - try { - mContext.startIntentSender(mTarget, null, 0, 0, 0); - } catch (IntentSender.SendIntentException e) { - Slog.e(LOG_TAG, "Failed to start the target in the callback", e); - } + mHandler.post(() -> { + try { + mContext.startIntentSender(mTarget, null, 0, 0, 0); + } catch (IntentSender.SendIntentException e) { + Slog.e(LOG_TAG, "Failed to start the target in the callback", e); + } + }); } } |