From: Hyunjee Kim Date: Tue, 29 Nov 2016 08:42:03 +0000 (+0900) Subject: Fix TC error + some errors X-Git-Tag: accepted/tizen/common/20170214.173719^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F14%2F101414%2F1;p=platform%2Fcore%2Fapi%2Fbase-utils.git Fix TC error + some errors Change-Id: I0d34bcb478ce66d3ebcc57a4ccf0fb4280e6db4d Signed-off-by: Hyunjee Kim --- diff --git a/src/utils_i18n_ubidi.c b/src/utils_i18n_ubidi.c index 43b9697..03449b7 100644 --- a/src/utils_i18n_ubidi.c +++ b/src/utils_i18n_ubidi.c @@ -263,13 +263,18 @@ int i18n_ubidi_get_text(const i18n_ubidi_h ubidi, char **text) * UTF-16 uses at least two bytes, growing up to four bytes as necessary, * that is why we multiply UChar by 4. */ - char _text[4*ulen+1]; + char *_text = NULL; + _text = (char *)malloc(4 * ulen + 1); + retv_if(_text == NULL, I18N_ERROR_OUT_OF_MEMORY); + memset(_text, 0x0, 4 * ulen + 1); + u_austrcpy(_text, _ubidi_text); int32_t len = strlen(_text); *text = (char *)malloc(len + 1); retv_if(*text == NULL, I18N_ERROR_OUT_OF_MEMORY); + memset(*text, 0x0, len+1); strncpy(*text, _text, len); @@ -324,7 +329,7 @@ int i18n_ubidi_get_visual_run(i18n_ubidi_h ubidi, int i18n_ubidi_invert_map(const int32_t *scr_map, int32_t length, int32_t *dest_map) { - retv_if(scr_map == NULL || dest_map == NULL, I18N_ERROR_INVALID_PARAMETER); + retv_if(scr_map == NULL || dest_map == NULL || length <= 0, I18N_ERROR_INVALID_PARAMETER); ubidi_invertMap(scr_map, dest_map, length);