Evas textblock: speeded things up by using the cached text_len
authortasn <tasn@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 14 Feb 2011 10:09:27 +0000 (10:09 +0000)
committertasn <tasn@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 14 Feb 2011 10:09:27 +0000 (10:09 +0000)
instead of calling eina_unicode_strlen all the time.
Also fixed an issue with size calculation.

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@57009 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/canvas/evas_object_textblock.c

index a04b7e5..78c2da1 100644 (file)
@@ -2500,12 +2500,12 @@ _layout_item_merge_and_free(Ctxt *c,
 {
    Eina_Unicode *tmp;
    size_t len1, len2;
-   item1->parent.w += item2->parent.w;
-   item1->parent.adv += item2->parent.adv;
+   _text_item_update_sizes(c, item1);
+   len1 = item1->parent.text_props.text_len;
+   len2 = item2->parent.text_props.text_len;
    evas_common_text_props_merge(&item1->parent.text_props,
          &item2->parent.text_props);
-   len1 = eina_unicode_strlen(item1->text);
-   len2 = eina_unicode_strlen(item2->text);
+
    tmp = realloc(item1->text, (len1 + len2 + 1) * sizeof(Eina_Unicode));
    eina_unicode_strcpy(tmp + len1, item2->text);
    item1->text = tmp;