aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2013-10-03 17:33:34 +0900
committerThe Android Automerger <android-build@android.com>2013-10-03 13:40:11 -0700
commit3cc0a1d2e0c5f82af561af8b51dfcaff9b2070af (patch)
tree0a79e2abf66b323697f6e0161a782cd10f8a6a7e
parente26b750805906f18d6ea52b602680bc3ff173ea9 (diff)
downloadlatinime-3cc0a1d2e0c5f82af561af8b51dfcaff9b2070af.tar.gz
latinime-3cc0a1d2e0c5f82af561af8b51dfcaff9b2070af.tar.xz
latinime-3cc0a1d2e0c5f82af561af8b51dfcaff9b2070af.zip
Fix: Native crash when an empty attribute is written. DO NOT MERGE
Bug: 10964805 Change-Id: I862a6b920a7a09eac4e012bfe75f087b2d7b4fe6
-rw-r--r--native/jni/src/suggest/policyimpl/dictionary/header/header_read_write_utils.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/native/jni/src/suggest/policyimpl/dictionary/header/header_read_write_utils.cpp b/native/jni/src/suggest/policyimpl/dictionary/header/header_read_write_utils.cpp
index 2694ce8d5..5ded8f6a1 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/header/header_read_write_utils.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/header/header_read_write_utils.cpp
@@ -139,6 +139,9 @@ const char *const HeaderReadWriteUtils::REQUIRES_FRENCH_LIGATURE_PROCESSING_KEY
int *const writingPos) {
for (AttributeMap::const_iterator it = headerAttributes->begin();
it != headerAttributes->end(); ++it) {
+ if (it->first.empty() || it->second.empty()) {
+ continue;
+ }
// Write a key.
if (!buffer->writeCodePointsAndAdvancePosition(&(it->first.at(0)), it->first.size(),
true /* writesTerminator */, writingPos)) {