From: Enlightenment S. <no-...@en...> - 2012-08-07 11:15:38
|
Log: 2 bugs. 1 textclasses were repeated per object list and (segv free same tc 2x) 2. we returend if size OR font name match - BOTH have to match to be "the same". so && not || Author: raster Date: 2012-08-07 04:15:30 -0700 (Tue, 07 Aug 2012) New Revision: 74980 Trac: http://trac.enlightenment.org/e/changeset/74980 Modified: trunk/edje/src/lib/edje_util.c Modified: trunk/edje/src/lib/edje_util.c =================================================================== --- trunk/edje/src/lib/edje_util.c 2012-08-07 11:03:32 UTC (rev 74979) +++ trunk/edje/src/lib/edje_util.c 2012-08-07 11:15:30 UTC (rev 74980) @@ -919,9 +919,9 @@ if ((tc->name) && (!strcmp(tc->name, text_class))) { /* Match and the same, return */ - if ((tc->size == size) || - (tc->font == font) || - (tc->font && font && !strcmp(tc->font, font))) + if ((tc->size == size) && + ((tc->font == font) || + (tc->font && font && !strcmp(tc->font, font)))) return EINA_TRUE; /* Update new text class properties */ @@ -944,6 +944,8 @@ } tc->font = eina_stringshare_add(font); tc->size = size; + /* Add to edje's text class list */ + ed->text_classes = eina_list_append(ed->text_classes, tc); } for (i = 0; i < ed->table_parts_size; i++) @@ -956,8 +958,6 @@ font, size); } - /* Add to edje's text class list */ - ed->text_classes = eina_list_append(ed->text_classes, tc); ed->dirty = 1; ed->recalc_call = 1; #ifdef EDJE_CALC_CACHE |