aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2014-02-24 20:40:16 +0900
committerKeisuke Kuroyanagi <ksk@google.com>2014-02-24 20:40:16 +0900
commit33e38096ad68164a4033eb5a77df75a532f3a7ec (patch)
tree578147790a5262107fc3678926180797954a38e8
parent66c96e881330538f2dbd85e97d9c636c06af5826 (diff)
downloadlatinime-33e38096ad68164a4033eb5a77df75a532f3a7ec.tar.gz
latinime-33e38096ad68164a4033eb5a77df75a532f3a7ec.tar.xz
latinime-33e38096ad68164a4033eb5a77df75a532f3a7ec.zip
Fix: -1 can be used as a code point of most probable string.
Bug: 11797518 Change-Id: Id2e8bce92d000f39d506af7cb844447696bcc019
-rw-r--r--native/jni/src/suggest/core/layout/proximity_info_state_utils.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/native/jni/src/suggest/core/layout/proximity_info_state_utils.cpp b/native/jni/src/suggest/core/layout/proximity_info_state_utils.cpp
index e1b35340b..bc4ca8e9e 100644
--- a/native/jni/src/suggest/core/layout/proximity_info_state_utils.cpp
+++ b/native/jni/src/suggest/core/layout/proximity_info_state_utils.cpp
@@ -992,7 +992,16 @@ namespace latinime {
}
}
if (character != NOT_AN_INDEX) {
- codePointBuf[index] = proximityInfo->getCodePointOf(character);
+ const int codePoint = proximityInfo->getCodePointOf(character);
+ if (codePoint == NOT_A_CODE_POINT) {
+ AKLOGE("Key index(%d) is not found. Cannot construct most probable string",
+ character);
+ ASSERT(false);
+ // Make the length zero, which means most probable string won't be used.
+ index = 0;
+ break;
+ }
+ codePointBuf[index] = codePoint;
index++;
}
sumLogProbability += minLogProbability;