am 2cdf5351: Merge "Fix possible SIOOBE"
* commit '2cdf5351aa11cc87494c5a86664b8bcd6f77d433': Fix possible SIOOBEmain
commit
e42522f335
|
@ -18,6 +18,7 @@ package com.android.inputmethod.latin;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
import com.android.inputmethod.keyboard.ProximityInfo;
|
import com.android.inputmethod.keyboard.ProximityInfo;
|
||||||
import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo;
|
import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo;
|
||||||
|
@ -31,6 +32,7 @@ import java.util.LinkedList;
|
||||||
* be searched for suggestions and valid words.
|
* be searched for suggestions and valid words.
|
||||||
*/
|
*/
|
||||||
public class ExpandableDictionary extends Dictionary {
|
public class ExpandableDictionary extends Dictionary {
|
||||||
|
private static final String TAG = ExpandableDictionary.class.getSimpleName();
|
||||||
/**
|
/**
|
||||||
* The weight to give to a word if it's length is the same as the number of typed characters.
|
* The weight to give to a word if it's length is the same as the number of typed characters.
|
||||||
*/
|
*/
|
||||||
|
@ -551,8 +553,13 @@ public class ExpandableDictionary extends Dictionary {
|
||||||
// word. We do want however to return the correct case for the right hand side.
|
// word. We do want however to return the correct case for the right hand side.
|
||||||
// So we want to squash the case of the left hand side, and preserve that of the right
|
// So we want to squash the case of the left hand side, and preserve that of the right
|
||||||
// hand side word.
|
// hand side word.
|
||||||
Node firstWord = searchWord(mRoots, word1.toLowerCase(), 0, null);
|
final String word1Lower = word1.toLowerCase();
|
||||||
Node secondWord = searchWord(mRoots, word2, 0, null);
|
if (TextUtils.isEmpty(word1Lower) || TextUtils.isEmpty(word2)) {
|
||||||
|
Log.e(TAG, "Invalid bigram pair: " + word1 + ", " + word1Lower + ", " + word2);
|
||||||
|
return frequency;
|
||||||
|
}
|
||||||
|
final Node firstWord = searchWord(mRoots, word1Lower, 0, null);
|
||||||
|
final Node secondWord = searchWord(mRoots, word2, 0, null);
|
||||||
LinkedList<NextWord> bigrams = firstWord.mNGrams;
|
LinkedList<NextWord> bigrams = firstWord.mNGrams;
|
||||||
if (bigrams == null || bigrams.size() == 0) {
|
if (bigrams == null || bigrams.size() == 0) {
|
||||||
firstWord.mNGrams = CollectionUtils.newLinkedList();
|
firstWord.mNGrams = CollectionUtils.newLinkedList();
|
||||||
|
|
Loading…
Reference in New Issue