summaryrefslogtreecommitdiffstats
path: root/src/pinyin.cpp
diff options
context:
space:
mode:
authorPeng Wu <alexepico@gmail.com>2016-07-06 15:37:55 +0800
committerPeng Wu <alexepico@gmail.com>2016-07-06 15:37:55 +0800
commitf7a44387af9407d3d9d3224b5eec5077fe141445 (patch)
tree54fc03de98f9360594bd80b16e8b4dc96c835656 /src/pinyin.cpp
parentbc906ecfbf52f98fa7174cb991e2ccb67293f2e6 (diff)
downloadlibpinyin-f7a44387af9407d3d9d3224b5eec5077fe141445.tar.gz
libpinyin-f7a44387af9407d3d9d3224b5eec5077fe141445.tar.xz
libpinyin-f7a44387af9407d3d9d3224b5eec5077fe141445.zip
fixes empty input
Diffstat (limited to 'src/pinyin.cpp')
-rw-r--r--src/pinyin.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/pinyin.cpp b/src/pinyin.cpp
index b3ca636..414cd38 100644
--- a/src/pinyin.cpp
+++ b/src/pinyin.cpp
@@ -2555,6 +2555,11 @@ bool pinyin_get_full_pinyin_auxiliary_text(pinyin_instance_t * instance,
size_t cursor,
gchar ** aux_text) {
PhoneticKeyMatrix & matrix = instance->m_matrix;
+ if (0 == matrix.size()) {
+ *aux_text = g_strdup("");
+ return false;
+ }
+
gchar * prefix = _get_aux_text_prefix
(instance, cursor, IS_PINYIN);
gchar * postfix = _get_aux_text_postfix
@@ -2608,6 +2613,11 @@ bool pinyin_get_double_pinyin_auxiliary_text(pinyin_instance_t * instance,
size_t cursor,
gchar ** aux_text) {
PhoneticKeyMatrix & matrix = instance->m_matrix;
+ if (0 == matrix.size()) {
+ *aux_text = g_strdup("");
+ return false;
+ }
+
gchar * prefix = _get_aux_text_prefix
(instance, cursor, IS_PINYIN);
gchar * postfix = _get_aux_text_postfix
@@ -2680,6 +2690,11 @@ bool pinyin_get_chewing_auxiliary_text(pinyin_instance_t * instance,
size_t cursor,
gchar ** aux_text) {
PhoneticKeyMatrix & matrix = instance->m_matrix;
+ if (0 == matrix.size()) {
+ *aux_text = g_strdup("");
+ return false;
+ }
+
gchar * prefix = _get_aux_text_prefix
(instance, cursor, IS_ZHUYIN);
gchar * postfix = _get_aux_text_postfix