Fix unusual NPE after onDestroy

Bug: 11673978
Change-Id: I4d5268312911685ff1ca9483a62442a1a9686c62
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 32e5e83..77d0701 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -725,8 +725,7 @@
         LatinImeLogger.commit();
         LatinImeLogger.onDestroy();
         if (mInputUpdater != null) {
-            mInputUpdater.onDestroy();
-            mInputUpdater = null;
+            mInputUpdater.quitLooper();
         }
         super.onDestroy();
     }
@@ -1824,13 +1823,13 @@
         mWordComposer.setCapitalizedModeAtStartComposingTime(getActualCapsMode());
     }
 
-    private static final class InputUpdater implements Handler.Callback {
+    static final class InputUpdater implements Handler.Callback {
         private final Handler mHandler;
         private final LatinIME mLatinIme;
         private final Object mLock = new Object();
         private boolean mInBatchInput; // synchronized using {@link #mLock}.
 
-        private InputUpdater(final LatinIME latinIme) {
+        InputUpdater(final LatinIME latinIme) {
             final HandlerThread handlerThread = new HandlerThread(
                     InputUpdater.class.getSimpleName());
             handlerThread.start();
@@ -1947,7 +1946,7 @@
                     .sendToTarget();
         }
 
-        private void onDestroy() {
+        void quitLooper() {
             mHandler.removeMessages(MSG_GET_SUGGESTED_WORDS);
             mHandler.removeMessages(MSG_UPDATE_GESTURE_PREVIEW_AND_SUGGESTION_STRIP);
             mHandler.getLooper().quit();