summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/storage/pinyin_parser2.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/storage/pinyin_parser2.cpp b/src/storage/pinyin_parser2.cpp
index df9b589..732598c 100644
--- a/src/storage/pinyin_parser2.cpp
+++ b/src/storage/pinyin_parser2.cpp
@@ -596,13 +596,19 @@ bool FullPinyinParser2::post_process2(pinyin_option_t options,
continue;
const char * onepinyin = str + cur_rest->m_raw_begin;
- size_t len = cur_rest->length();
+ size_t len = strlen(item->m_orig_keys[0]);
+
+ if (cur_rest->length() != len)
+ continue;
if (0 != strncmp(onepinyin, item->m_orig_keys[0], len))
continue;
onepinyin = str + next_rest->m_raw_begin;
- len = next_rest->length();
+ len = strlen(item->m_orig_keys[1]);
+
+ if (next_rest->length() != len)
+ continue;
if (0 == strncmp(onepinyin, item->m_orig_keys[1], len))
break;