diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/ispell/ispell_checker.cpp | 6 | ||||
-rw-r--r-- | src/myspell/myspell_checker.cpp | 8 |
2 files changed, 10 insertions, 4 deletions
diff --git a/src/ispell/ispell_checker.cpp b/src/ispell/ispell_checker.cpp index e27117d..8a368b7 100644 --- a/src/ispell/ispell_checker.cpp +++ b/src/ispell/ispell_checker.cpp @@ -252,7 +252,8 @@ ISpellChecker::checkWord(const char * const utf8Word, size_t length) len_in = length * sizeof(char); len_out = sizeof( szWord ) - 1; - g_iconv(m_translate_in, &In, &len_in, &Out, &len_out); + if ((size_t)-1 == g_iconv(m_translate_in, &In, &len_in, &Out, &len_out)) + return false; *Out = '\0'; } @@ -294,7 +295,8 @@ ISpellChecker::suggestWord(const char * const utf8Word, size_t length, char *Out = word8; len_in = length; len_out = sizeof( word8 ) - 1; - g_iconv(m_translate_in, &In, &len_in, &Out, &len_out); + if ((size_t)-1 == g_iconv(m_translate_in, &In, &len_in, &Out, &len_out)) + return NULL; *Out = '\0'; } diff --git a/src/myspell/myspell_checker.cpp b/src/myspell/myspell_checker.cpp index 61d61e8..4c4108e 100644 --- a/src/myspell/myspell_checker.cpp +++ b/src/myspell/myspell_checker.cpp @@ -92,7 +92,8 @@ MySpellChecker::checkWord(const char *utf8Word, size_t len) char *out = word8; size_t len_in = len * sizeof(char); size_t len_out = sizeof( word8 ) - 1; - g_iconv(m_translate_in, &in, &len_in, &out, &len_out); + if ((size_t)-1 == g_iconv(m_translate_in, &in, &len_in, &out, &len_out)) + return false; *out = '\0'; if (myspell->spell(word8)) return true; @@ -107,12 +108,15 @@ MySpellChecker::suggestWord(const char* const utf8Word, size_t len, size_t *nsug || !g_iconv_is_valid(m_translate_in) || !g_iconv_is_valid(m_translate_out)) return 0; + char *in = (char*) utf8Word; char word8[MAXWORDLEN + 1]; char *out = word8; size_t len_in = len; size_t len_out = sizeof(word8) - 1; - g_iconv(m_translate_in, &in, &len_in, &out, &len_out); + if ((size_t)-1 == g_iconv(m_translate_in, &in, &len_in, &out, &len_out)) + return NULL; + *out = '\0'; char **sugMS; *nsug = myspell->suggest(&sugMS, word8); |