diff options
author | 2012-03-28 11:32:11 +0900 | |
---|---|---|
committer | 2012-03-28 13:02:14 +0900 | |
commit | 9611b281e18ac71d825ff5bc771a111423772cb3 (patch) | |
tree | e7e311fd2ff741b61fbcc019eb300214bace36bd /java/src/com/android/inputmethod/latin/WordComposer.java | |
parent | 8d16a0c9a148b40b208f92a99237612ed2852df3 (diff) | |
download | latinime-9611b281e18ac71d825ff5bc771a111423772cb3.tar.gz latinime-9611b281e18ac71d825ff5bc771a111423772cb3.tar.xz latinime-9611b281e18ac71d825ff5bc771a111423772cb3.zip |
Fix AIOOBE
Bug: 6236912
Change-Id: Ie09e5ef1c23eb48621ac3f2f2dc28dc2e46ca288
Diffstat (limited to 'java/src/com/android/inputmethod/latin/WordComposer.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/WordComposer.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/java/src/com/android/inputmethod/latin/WordComposer.java b/java/src/com/android/inputmethod/latin/WordComposer.java index 29a7e4816..7c3d3c2a0 100644 --- a/java/src/com/android/inputmethod/latin/WordComposer.java +++ b/java/src/com/android/inputmethod/latin/WordComposer.java @@ -104,7 +104,11 @@ public class WordComposer { return size() > 0; } + // TODO: make sure that the index should not exceed MAX_WORD_LENGTH public int getCodeAt(int index) { + if (index >= BinaryDictionary.MAX_WORD_LENGTH) { + return -1; + } return mPrimaryKeyCodes[index]; } @@ -153,8 +157,8 @@ public class WordComposer { final int newIndex = size(); mTypedWord.appendCodePoint(primaryCode); refreshSize(); - mPrimaryKeyCodes[newIndex] = codes[0]; if (newIndex < BinaryDictionary.MAX_WORD_LENGTH) { + mPrimaryKeyCodes[newIndex] = codes[0]; mXCoordinates[newIndex] = keyX; mYCoordinates[newIndex] = keyY; } |