Skip to content
Snippets Groups Projects
Commit dd8ca1f8 authored by Satoshi Kataoka's avatar Satoshi Kataoka Committed by Android Git Automerger
Browse files

am bc586fb1: am 0b327101: Merge "Fix possible NPE"

* commit 'bc586fb1':
  Fix possible NPE
parents 56b1bd86 bc586fb1
No related branches found
No related tags found
No related merge requests found
...@@ -156,7 +156,7 @@ public final class LatinIME extends InputMethodService implements KeyboardAction ...@@ -156,7 +156,7 @@ public final class LatinIME extends InputMethodService implements KeyboardAction
private PositionalInfoForUserDictPendingAddition private PositionalInfoForUserDictPendingAddition
mPositionalInfoForUserDictPendingAddition = null; mPositionalInfoForUserDictPendingAddition = null;
private final WordComposer mWordComposer = new WordComposer(); private final WordComposer mWordComposer = new WordComposer();
private RichInputConnection mConnection = new RichInputConnection(this); private final RichInputConnection mConnection = new RichInputConnection(this);
// Keep track of the last selection range to decide if we need to show word alternatives // Keep track of the last selection range to decide if we need to show word alternatives
private static final int NOT_A_CURSOR_POSITION = -1; private static final int NOT_A_CURSOR_POSITION = -1;
...@@ -2297,25 +2297,27 @@ public final class LatinIME extends InputMethodService implements KeyboardAction ...@@ -2297,25 +2297,27 @@ public final class LatinIME extends InputMethodService implements KeyboardAction
// expect to receive non-words. // expect to receive non-words.
if (!mSettings.getCurrent().mCorrectionEnabled) return null; if (!mSettings.getCurrent().mCorrectionEnabled) return null;
final Suggest suggest = mSuggest;
final UserHistoryDictionary userHistoryDictionary = mUserHistoryDictionary; final UserHistoryDictionary userHistoryDictionary = mUserHistoryDictionary;
if (userHistoryDictionary != null) { if (suggest == null || userHistoryDictionary == null) {
final String prevWord // Avoid concurrent issue
= mConnection.getNthPreviousWord(mSettings.getCurrent().mWordSeparators, 2); return null;
final String secondWord; }
if (mWordComposer.wasAutoCapitalized() && !mWordComposer.isMostlyCaps()) { final String prevWord
secondWord = suggestion.toLowerCase(mSubtypeSwitcher.getCurrentSubtypeLocale()); = mConnection.getNthPreviousWord(mSettings.getCurrent().mWordSeparators, 2);
} else { final String secondWord;
secondWord = suggestion; if (mWordComposer.wasAutoCapitalized() && !mWordComposer.isMostlyCaps()) {
} secondWord = suggestion.toLowerCase(mSubtypeSwitcher.getCurrentSubtypeLocale());
// We demote unrecognized words (frequency < 0, below) by specifying them as "invalid". } else {
// We don't add words with 0-frequency (assuming they would be profanity etc.). secondWord = suggestion;
final int maxFreq = AutoCorrection.getMaxFrequency( }
mSuggest.getUnigramDictionaries(), suggestion); // We demote unrecognized words (frequency < 0, below) by specifying them as "invalid".
if (maxFreq == 0) return null; // We don't add words with 0-frequency (assuming they would be profanity etc.).
userHistoryDictionary.addToUserHistory(prevWord, secondWord, maxFreq > 0); final int maxFreq = AutoCorrection.getMaxFrequency(
return prevWord; suggest.getUnigramDictionaries(), suggestion);
} if (maxFreq == 0) return null;
return null; userHistoryDictionary.addToUserHistory(prevWord, secondWord, maxFreq > 0);
return prevWord;
} }
/** /**
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment