aboutsummaryrefslogtreecommitdiffstats
path: root/native/src
diff options
context:
space:
mode:
authorsatok <satok@google.com>2011-08-04 18:32:37 +0900
committersatok <satok@google.com>2011-08-04 18:32:37 +0900
commitf071e75b781ebb9e1b8dd5b3111af9a92de66bc1 (patch)
treed6b1fcae340bab28e5ab8fb6c64f708af1b7e605 /native/src
parent8289dede0aa387d6314d7c585407c5505badb582 (diff)
downloadlatinime-f071e75b781ebb9e1b8dd5b3111af9a92de66bc1.tar.gz
latinime-f071e75b781ebb9e1b8dd5b3111af9a92de66bc1.tar.xz
latinime-f071e75b781ebb9e1b8dd5b3111af9a92de66bc1.zip
Change the prune condition
Change-Id: I92aef12e0e1d89cfe1b346ddc6ef4df158ffe0b3
Diffstat (limited to 'native/src')
-rw-r--r--native/src/unigram_dictionary.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/native/src/unigram_dictionary.cpp b/native/src/unigram_dictionary.cpp
index 9f8f04e50..b95da99a3 100644
--- a/native/src/unigram_dictionary.cpp
+++ b/native/src/unigram_dictionary.cpp
@@ -808,7 +808,8 @@ inline bool UnigramDictionary::processCurrentNode(const int initialPos, const in
}
}
// Optimization: Prune out words that are too long compared to how much was typed.
- if (correctionState->getOutputIndex() >= maxDepth || diffs > mMaxEditDistance) {
+ if (isTerminal
+ && (correctionState->getOutputIndex() >= maxDepth || diffs > mMaxEditDistance)) {
// We are giving up parsing this node and its children. Skip the rest of the node,
// output the sibling position, and return that we don't want to traverse children.
if (!isLastChar) {