aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAmith Yamasani <yamasani@google.com>2009-10-09 07:03:11 -0700
committerAmith Yamasani <yamasani@google.com>2009-10-09 07:03:11 -0700
commiteef539c3f2b60af74a3ce05ac68288e7f86709ae (patch)
tree856528ea29b8a78b2e6f4173af9258bcf40e6f55 /src
parentb3f6d58b6ec716c26df38b584eda061265437cf4 (diff)
downloadlatinime-eef539c3f2b60af74a3ce05ac68288e7f86709ae.tar.gz
latinime-eef539c3f2b60af74a3ce05ac68288e7f86709ae.tar.xz
latinime-eef539c3f2b60af74a3ce05ac68288e7f86709ae.zip
Fix a potential IllegalArgumentException caught by monkeys. #2176776
For some reason the key code is outside the code point range. Adding a safeguard to deal with possible out of range key codes.
Diffstat (limited to 'src')
-rw-r--r--src/com/android/inputmethod/latin/LatinIME.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/com/android/inputmethod/latin/LatinIME.java b/src/com/android/inputmethod/latin/LatinIME.java
index 8c9102d8c..ae296aff6 100644
--- a/src/com/android/inputmethod/latin/LatinIME.java
+++ b/src/com/android/inputmethod/latin/LatinIME.java
@@ -693,6 +693,10 @@ public class LatinIME extends InputMethodService
}
if (mInputView.isShifted()) {
// TODO: This doesn't work with ß, need to fix it in the next release.
+ if (keyCodes == null || keyCodes[0] < Character.MIN_CODE_POINT
+ || keyCodes[0] > Character.MAX_CODE_POINT) {
+ return;
+ }
primaryCode = new String(keyCodes, 0, 1).toUpperCase().charAt(0);
}
if (mPredicting) {