From 2c830b0b813c61460c7ca687c04ed0c1d2a9eb16 Mon Sep 17 00:00:00 2001 From: WooHyun Jung Date: Wed, 9 Feb 2011 16:56:12 +0900 Subject: [PATCH] [textblock & encoding] 56806 & 56808 are updated --- src/lib/canvas/evas_object_textblock.c | 7 +------ src/lib/engines/common/evas_encoding.c | 11 ++++------- 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/src/lib/canvas/evas_object_textblock.c b/src/lib/canvas/evas_object_textblock.c index d964073..ee3f748 100644 --- a/src/lib/canvas/evas_object_textblock.c +++ b/src/lib/canvas/evas_object_textblock.c @@ -2356,12 +2356,7 @@ _layout_text_append(Ctxt *c, Evas_Object_Textblock_Format *fmt, Evas_Object_Text else { str = eina_ustrbuf_string_get(n->unicode); - alloc_str = eina_unicode_strdup(str + start); - - if (off > 0) - { - alloc_str[off] = 0; - } + alloc_str = eina_unicode_strndup(str + start, off); str = alloc_str; } } diff --git a/src/lib/engines/common/evas_encoding.c b/src/lib/engines/common/evas_encoding.c index 2d2a842..96a2690 100644 --- a/src/lib/engines/common/evas_encoding.c +++ b/src/lib/engines/common/evas_encoding.c @@ -236,14 +236,11 @@ EAPI int evas_common_encoding_utf8_get_len(const char *buf) { /* returns the number of utf8 characters (not bytes) in the string */ - int index = 0, len = 0; + int i = 0, len = 0; + + while (evas_common_encoding_utf8_get_next(buf, &i)) + len++; - while (buf[index]) - { - if ((buf[index] & 0xc0) != 0x80) - len++; - index++; - } return len; } -- 2.7.4