From 9d91b43c8d0fa233905ecf132c6e6ee664904694 Mon Sep 17 00:00:00 2001 From: Yohei Yukawa Date: Mon, 19 May 2014 16:03:24 +0900 Subject: Do not pass null to IInputMethod#setSessionEnabled It doen't make sense to pass null as IInputMethodSession for IInputMethod#setSessionEnabled. If we do this, it causes NPE. BUG: 14980068 Change-Id: Ide48d098d5e7640890257e31f8872e79b9821eb2 --- .../com/android/server/InputMethodManagerService.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'services/core/java/com') diff --git a/services/core/java/com/android/server/InputMethodManagerService.java b/services/core/java/com/android/server/InputMethodManagerService.java index 0b9570d..50553ee 100644 --- a/services/core/java/com/android/server/InputMethodManagerService.java +++ b/services/core/java/com/android/server/InputMethodManagerService.java @@ -2369,20 +2369,20 @@ public class InputMethodManagerService extends IInputMethodManager.Stub void setEnabledSessionInMainThread(SessionState session) { if (mEnabledSession != session) { - if (mEnabledSession != null) { + if (mEnabledSession != null && mEnabledSession.session != null) { try { if (DEBUG) Slog.v(TAG, "Disabling: " + mEnabledSession); - mEnabledSession.method.setSessionEnabled( - mEnabledSession.session, false); + mEnabledSession.method.setSessionEnabled(mEnabledSession.session, false); } catch (RemoteException e) { } } mEnabledSession = session; - try { - if (DEBUG) Slog.v(TAG, "Enabling: " + mEnabledSession); - session.method.setSessionEnabled( - session.session, true); - } catch (RemoteException e) { + if (mEnabledSession != null && mEnabledSession.session != null) { + try { + if (DEBUG) Slog.v(TAG, "Enabling: " + mEnabledSession); + mEnabledSession.method.setSessionEnabled(mEnabledSession.session, true); + } catch (RemoteException e) { + } } } } -- cgit v1.1