aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2014-08-20 12:03:13 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-08-20 12:03:13 +0000
commitc4f827f81f98187c4357d9b29568fbba6add181f (patch)
tree6095c0ffa4ae7adf71bc81539496e3d50645050b
parentbc5d8deb334933a594ad67f16eb846710d3ae6ab (diff)
parentcdc260b78ed8d73b9e425ac55f3b5f9dab8bf753 (diff)
downloadlatinime-c4f827f81f98187c4357d9b29568fbba6add181f.tar.gz
latinime-c4f827f81f98187c4357d9b29568fbba6add181f.tar.xz
latinime-c4f827f81f98187c4357d9b29568fbba6add181f.zip
am cdc260b7: Merge "Fix TrieMap: Cannot create next level map of small value entry."
* commit 'cdc260b78ed8d73b9e425ac55f3b5f9dab8bf753': Fix TrieMap: Cannot create next level map of small value entry.
-rw-r--r--native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.cpp2
-rw-r--r--native/jni/tests/suggest/policyimpl/dictionary/utils/trie_map_test.cpp1
2 files changed, 2 insertions, 1 deletions
diff --git a/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.cpp b/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.cpp
index 944a59c52..39f417ebb 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.cpp
@@ -85,7 +85,7 @@ int TrieMap::getNextLevelBitmapEntryIndex(const int key, const int bitmapEntryIn
if (!writeEntry(EMPTY_BITMAP_ENTRY, valueEntryIndex + 1)) {
return INVALID_INDEX;
}
- if (!writeField1(valueEntryIndex | TERMINAL_LINK_FLAG, valueEntryIndex)) {
+ if (!writeField1(valueEntryIndex | TERMINAL_LINK_FLAG, terminalEntryIndex)) {
return INVALID_INDEX;
}
return valueEntryIndex + 1;
diff --git a/native/jni/tests/suggest/policyimpl/dictionary/utils/trie_map_test.cpp b/native/jni/tests/suggest/policyimpl/dictionary/utils/trie_map_test.cpp
index 9904a3aa8..56b5aa985 100644
--- a/native/jni/tests/suggest/policyimpl/dictionary/utils/trie_map_test.cpp
+++ b/native/jni/tests/suggest/policyimpl/dictionary/utils/trie_map_test.cpp
@@ -40,6 +40,7 @@ TEST(TrieMapTest, TestSetAndGet) {
trieMap.putRoot(11, 1000);
EXPECT_EQ(1000ull, trieMap.getRoot(11).mValue);
const int next = trieMap.getNextLevelBitmapEntryIndex(10);
+ EXPECT_EQ(1000ull, trieMap.getRoot(10).mValue);
trieMap.put(9, 9, next);
EXPECT_EQ(9ull, trieMap.get(9, next).mValue);
EXPECT_FALSE(trieMap.get(11, next).mIsValid);