summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Gopal Krishna Shukla <gshukla@codeaurora.org> 2016-06-30 11:34:21 +0530
committer Yohei Yukawa <yukawa@google.com> 2016-09-16 03:41:46 +0000
commitfa1886feea55785f413f5efcd86bccca92f26759 (patch)
tree948877aebd186c4475e4313a09d52aab72db0113
parent9d9cf5b383f26c209b781dbca0723f69ff6913ba (diff)
Remove synchronization from getCurrentInputMethodSubtype()
getCurrentInputMethodSubtype() acquires InputManagerService.mMethodMap within its body. There seems to be no reason for holding InputMethodManager.mH to call getCurrentInputMethodSubtype(). Holding mH can cause potential deadlock b/w two threads acquiring mH and mMethodMap in different orders. Bug: 31247871 Bug: 31273203 Bug: b.android.com/218423 Change-Id: I20cf2c20f49b1b02c0f7a18257b49d4bcc081b5d
-rw-r--r--core/java/android/view/inputmethod/InputMethodManager.java10
1 files changed, 4 insertions, 6 deletions
diff --git a/core/java/android/view/inputmethod/InputMethodManager.java b/core/java/android/view/inputmethod/InputMethodManager.java
index 4013b30fce06..0b7ac88c6925 100644
--- a/core/java/android/view/inputmethod/InputMethodManager.java
+++ b/core/java/android/view/inputmethod/InputMethodManager.java
@@ -2053,12 +2053,10 @@ public final class InputMethodManager {
* have any input method subtype.
*/
public InputMethodSubtype getCurrentInputMethodSubtype() {
- synchronized (mH) {
- try {
- return mService.getCurrentInputMethodSubtype();
- } catch (RemoteException e) {
- throw e.rethrowFromSystemServer();
- }
+ try {
+ return mService.getCurrentInputMethodSubtype();
+ } catch (RemoteException e) {
+ throw e.rethrowFromSystemServer();
}
}