From 67b9337b6cc478973d2c628fb5686583ce339bf0 Mon Sep 17 00:00:00 2001 From: Satoshi Kataoka <satok@google.com> Date: Tue, 19 Jun 2012 03:28:19 +0900 Subject: [PATCH] Fix possible NPE from a concurrent problem in LatinIME Bug: 6620746 Change-Id: Icc18de92d7edc6888c712c2cf5ce479a65f8bfad --- java/src/com/android/inputmethod/latin/LatinIME.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index 3456ce945..8c244d686 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -1971,7 +1971,8 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen // want corrections enabled or learned. if (!mCurrentSettings.isCorrectionOn()) return null; - if (mUserHistoryDictionary != null) { + final UserHistoryDictionary userHistoryDictionary = mUserHistoryDictionary; + if (userHistoryDictionary != null) { final CharSequence prevWord = mConnection.getPreviousWord(mCurrentSettings.mWordSeparators); final String secondWord; @@ -1986,7 +1987,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen final int maxFreq = AutoCorrection.getMaxFrequency( mSuggest.getUnigramDictionaries(), suggestion); if (maxFreq == 0) return null; - mUserHistoryDictionary.addToUserHistory(null == prevWord ? null : prevWord.toString(), + userHistoryDictionary.addToUserHistory(null == prevWord ? null : prevWord.toString(), secondWord, maxFreq > 0); return prevWord; }