aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2012-03-21 00:54:25 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-03-21 00:54:25 -0700
commitf5f53c2fa610fd9ea4588fd7c8c6fc3f36b9247a (patch)
treea9b5cbf27ca3ea01a20948bbd421afba8e33be90 /java/src
parent140467b8b65eb9087a9b7f744dbb8a30481effe7 (diff)
parent6ca3ac08ed536c415ac68913e23fde175b5e3f4d (diff)
downloadlatinime-f5f53c2fa610fd9ea4588fd7c8c6fc3f36b9247a.tar.gz
latinime-f5f53c2fa610fd9ea4588fd7c8c6fc3f36b9247a.tar.xz
latinime-f5f53c2fa610fd9ea4588fd7c8c6fc3f36b9247a.zip
Merge "Strengthen java code against bad returns from native"
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/latin/BinaryDictionary.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionary.java b/java/src/com/android/inputmethod/latin/BinaryDictionary.java
index 31ff4e7b4..dfc8c8e9d 100644
--- a/java/src/com/android/inputmethod/latin/BinaryDictionary.java
+++ b/java/src/com/android/inputmethod/latin/BinaryDictionary.java
@@ -149,6 +149,9 @@ public class BinaryDictionary extends Dictionary {
int count = getBigramsNative(mNativeDict, chars, chars.length, mInputCodes, codesSize,
mOutputChars_bigrams, mBigramScores, MAX_WORD_LENGTH, MAX_BIGRAMS,
MAX_PROXIMITY_CHARS_SIZE);
+ if (count > MAX_BIGRAMS) {
+ count = MAX_BIGRAMS;
+ }
for (int j = 0; j < count; ++j) {
if (codesSize > 0 && mBigramScores[j] < 1) break;