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;