diff options
| author | 2015-10-08 23:54:13 +0000 | |
|---|---|---|
| committer | 2015-10-08 23:54:13 +0000 | |
| commit | 0b45c2f87c0285b42eef96bbb8950d225334c60e (patch) | |
| tree | 0593253a632eb74d635fa7f98d42c5f332cf65df | |
| parent | b2387e650b3ddd0c2045de66307c4362326363f1 (diff) | |
| parent | 21b37a5fb46f3dcd20bba0c621d8859e1c8dc32e (diff) | |
am 21b37a5f: Merge "Make accessing mInputMethodTarget thread-safe"
* commit '21b37a5fb46f3dcd20bba0c621d8859e1c8dc32e':
Make accessing mInputMethodTarget thread-safe
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowManagerService.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index 7cc65d835016..101f64b84191 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -6196,10 +6196,13 @@ public class WindowManagerService extends IWindowManager.Stub int retryCount = 0; WindowState appWin = null; - final boolean appIsImTarget = mInputMethodTarget != null - && mInputMethodTarget.mAppToken != null - && mInputMethodTarget.mAppToken.appToken != null - && mInputMethodTarget.mAppToken.appToken.asBinder() == appToken; + boolean appIsImTarget; + synchronized(mWindowMap) { + appIsImTarget = mInputMethodTarget != null + && mInputMethodTarget.mAppToken != null + && mInputMethodTarget.mAppToken.appToken != null + && mInputMethodTarget.mAppToken.appToken.asBinder() == appToken; + } final int aboveAppLayer = (mPolicy.windowTypeToLayerLw(TYPE_APPLICATION) + 1) * TYPE_LAYER_MULTIPLIER + TYPE_LAYER_OFFSET; |