diff options
author | 2014-05-14 09:12:15 +0000 | |
---|---|---|
committer | 2014-05-14 09:12:15 +0000 | |
commit | 4d3253326e4dbb46cc819e25ca6e2b0e153a5c0c (patch) | |
tree | bb4c6e331c1e257730fd66d529a12afb1f588f23 /native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp | |
parent | 2e661720dd748e692f5f3b8afc1c8a736f15ce88 (diff) | |
parent | 72d6061efbc025fbf5774aace80376a07b44bb7e (diff) | |
download | latinime-4d3253326e4dbb46cc819e25ca6e2b0e153a5c0c.tar.gz latinime-4d3253326e4dbb46cc819e25ca6e2b0e153a5c0c.tar.xz latinime-4d3253326e4dbb46cc819e25ca6e2b0e153a5c0c.zip |
am 72d6061e: Merge "Use JniDataUtils::outputCodePoints() to output code points"
* commit '72d6061efbc025fbf5774aace80376a07b44bb7e':
Use JniDataUtils::outputCodePoints() to output code points
Diffstat (limited to 'native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp')
-rw-r--r-- | native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp b/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp index a55b2da96..9098b714b 100644 --- a/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp +++ b/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp @@ -149,14 +149,16 @@ static void latinime_BinaryDictionary_getHeaderInfo(JNIEnv *env, jclass clazz, j it != attributeMap->end(); ++it) { // Output key jintArray keyCodePointArray = env->NewIntArray(it->first.size()); - env->SetIntArrayRegion( - keyCodePointArray, 0 /* start */, it->first.size(), &it->first.at(0)); + JniDataUtils::outputCodePoints(env, keyCodePointArray, 0 /* start */, + it->first.size(), it->first.data(), it->first.size(), + false /* needsNullTermination */); env->CallBooleanMethod(outAttributeKeys, addMethodId, keyCodePointArray); env->DeleteLocalRef(keyCodePointArray); // Output value jintArray valueCodePointArray = env->NewIntArray(it->second.size()); - env->SetIntArrayRegion( - valueCodePointArray, 0 /* start */, it->second.size(), &it->second.at(0)); + JniDataUtils::outputCodePoints(env, valueCodePointArray, 0 /* start */, + it->second.size(), it->second.data(), it->second.size(), + false /* needsNullTermination */); env->CallBooleanMethod(outAttributeValues, addMethodId, valueCodePointArray); env->DeleteLocalRef(valueCodePointArray); } @@ -301,6 +303,9 @@ static jint latinime_BinaryDictionary_getNextWord(JNIEnv *env, jclass clazz, memset(wordCodePoints, 0, sizeof(wordCodePoints)); const int nextToken = dictionary->getNextWordAndNextToken(token, wordCodePoints); env->SetIntArrayRegion(outCodePoints, 0, outCodePointsLength, wordCodePoints); + JniDataUtils::outputCodePoints(env, outCodePoints, 0 /* start */, + MAX_WORD_LENGTH /* maxLength */, wordCodePoints, outCodePointsLength, + false /* needsNullTermination */); return nextToken; } |