aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2014-07-09 03:08:16 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-07-02 20:35:42 +0000
commit7f14894f2f38f8dade230c53dd5a1410c40f7e0d (patch)
tree21cd309aecf5b38a28fbc24af8bec83ba90897f5
parentd5f32b38f507cf0f4e3ceed5a360f6f809ada3c6 (diff)
parent198be3a6c5c53e63de5ed3a6a1ce618ca36ff98c (diff)
downloadlatinime-7f14894f2f38f8dade230c53dd5a1410c40f7e0d.tar.gz
latinime-7f14894f2f38f8dade230c53dd5a1410c40f7e0d.tar.xz
latinime-7f14894f2f38f8dade230c53dd5a1410c40f7e0d.zip
Merge "Fix: wrong bigram entry pos can be used during GC."
-rw-r--r--native/jni/src/suggest/policyimpl/dictionary/structure/v4/bigram/ver4_bigram_list_policy.cpp2
-rw-r--r--native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_writing_helper.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/native/jni/src/suggest/policyimpl/dictionary/structure/v4/bigram/ver4_bigram_list_policy.cpp b/native/jni/src/suggest/policyimpl/dictionary/structure/v4/bigram/ver4_bigram_list_policy.cpp
index 146cab6c2..08dc107ab 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/structure/v4/bigram/ver4_bigram_list_policy.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/structure/v4/bigram/ver4_bigram_list_policy.cpp
@@ -175,9 +175,9 @@ bool Ver4BigramListPolicy::updateAllBigramEntriesAndDeleteUselessEntries(const i
bool hasNext = true;
int readingPos = bigramListPos;
while (hasNext) {
- const int entryPos = readingPos;
const BigramEntry bigramEntry =
mBigramDictContent->getBigramEntryAndAdvancePosition(&readingPos);
+ const int entryPos = readingPos - mBigramDictContent->getBigramEntrySize();
hasNext = bigramEntry.hasNext();
if (!bigramEntry.isValid()) {
continue;
diff --git a/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_writing_helper.cpp b/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_writing_helper.cpp
index 40fdfa068..0e658f8e3 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_writing_helper.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_writing_helper.cpp
@@ -242,9 +242,9 @@ bool Ver4PatriciaTrieWritingHelper::truncateBigrams(const int maxBigramCount) {
bool hasNext = true;
int readingPos = bigramListPos;
while (hasNext) {
- const int entryPos = readingPos;
const BigramEntry bigramEntry =
bigramDictContent->getBigramEntryAndAdvancePosition(&readingPos);
+ const int entryPos = readingPos - bigramDictContent->getBigramEntrySize();
hasNext = bigramEntry.hasNext();
if (!bigramEntry.isValid()) {
continue;