diff options
author | 2011-07-26 19:24:58 +0900 | |
---|---|---|
committer | 2011-07-27 13:27:37 +0900 | |
commit | e576a0d53705086eebc765131c02d318ab7a86cb (patch) | |
tree | 7a305982716f066cee73476a08498a00de991550 /java/src | |
parent | 9a388f2ef3f1b52242b1baaba7be655f87fdee11 (diff) | |
download | latinime-e576a0d53705086eebc765131c02d318ab7a86cb.tar.gz latinime-e576a0d53705086eebc765131c02d318ab7a86cb.tar.xz latinime-e576a0d53705086eebc765131c02d318ab7a86cb.zip |
Fix a NPE when sent buggy data by an application
Bug: 5072247
Change-Id: I7369877072f6bb94dff5b1bcf52c9f8dde4854b7
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/latin/SuggestedWords.java | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/java/src/com/android/inputmethod/latin/SuggestedWords.java b/java/src/com/android/inputmethod/latin/SuggestedWords.java index 84db17504..b77cbd199 100644 --- a/java/src/com/android/inputmethod/latin/SuggestedWords.java +++ b/java/src/com/android/inputmethod/latin/SuggestedWords.java @@ -16,6 +16,7 @@ package com.android.inputmethod.latin; +import android.text.TextUtils; import android.view.inputmethod.CompletionInfo; import java.util.ArrayList; @@ -105,14 +106,18 @@ public class SuggestedWords { } private Builder addWord(CharSequence word, SuggestedWordInfo suggestedWordInfo) { - mWords.add(word); - mSuggestedWordInfoList.add(suggestedWordInfo); + if (!TextUtils.isEmpty(word)) { + mWords.add(word); + // It's okay if suggestedWordInfo is null since it's checked where it's used. + mSuggestedWordInfoList.add(suggestedWordInfo); + } return this; } public Builder setApplicationSpecifiedCompletions(CompletionInfo[] infos) { - for (CompletionInfo info : infos) - addWord(info.getText()); + for (CompletionInfo info : infos) { + if (null != info) addWord(info.getText()); + } return this; } |