edje: fix Eina_Cow usage in edje.

This commit is contained in:
Cedric BAIL 2013-03-14 10:39:27 +09:00
parent 7ebdd8446b
commit 464391ca07
3 changed files with 21 additions and 0 deletions

View File

@ -1,3 +1,7 @@
2013-03-13 Cedric Bail
* Edje: use Eina_Cow to reduce memory usage.
2013-03-12 Jiyoun Park (Jypark)
* Ecore_x: fix bug not check data value when get deiconify message

1
NEWS
View File

@ -123,6 +123,7 @@ Improvements:
* eina: eina_strlcat now work with a NULL source.
* Evas textblock: Added proper size adjustments for "high" shaped texts.
* Use the right macro to disable fcntl.
* Edje: use Eina_Cow to reduce memory usage.
Fixes:
* Fix a memory leak in ecore_con_dns when using ecore_con_server_connect

View File

@ -3006,8 +3006,24 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
if (ep->current)
{
const Edje_Calc_Params_Map *map;
#ifdef HAVE_EPHYSICS
const Edje_Calc_Params_Physics *physics;
#endif
map = p1->map;
#ifdef HAVE_EPHYSICS
physics = p1->physics;
#endif
/* FIXME: except for text, we don't need in that case to recalc p1 at all*/
memcpy(p1, ep->current, sizeof (Edje_Calc_Params));
p1->map = map;
#ifdef HAVE_EPHYSICS
p1->physics = physics;
#endif
p1->x += ed->x;
p1->y += ed->y;
EINA_COW_CALC_MAP_BEGIN(p1, p1_write) // FIXME: this will force an allocation on p1