From e4dbe385bbf7017347c33b665cf1567965fa20ec Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Wed, 2 May 2012 06:55:15 +0000 Subject: [PATCH] edje: doing less is actually better. SVN revision: 70608 --- legacy/edje/ChangeLog | 4 ++++ legacy/edje/NEWS | 3 +++ legacy/edje/src/lib/edje_calc.c | 5 ++--- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/legacy/edje/ChangeLog b/legacy/edje/ChangeLog index a052da66e0..2d9cb5f6bd 100644 --- a/legacy/edje/ChangeLog +++ b/legacy/edje/ChangeLog @@ -419,3 +419,7 @@ 2012-04-30 Jérôme Pinot * Add missing files in the tarballs. + +2012-05-02 Cedric Bail + + * Doing less allocation and reuse Evas_Map does help. diff --git a/legacy/edje/NEWS b/legacy/edje/NEWS index 6fdcb6212d..88c69a631e 100644 --- a/legacy/edje/NEWS +++ b/legacy/edje/NEWS @@ -3,6 +3,9 @@ Edje 1.3.0 Changes since Edje 1.2.0: ------------------------- +Improvements: + * Allocate once and reuse Evas_Map. + Fixes: * Add missing files in the tarballs. diff --git a/legacy/edje/src/lib/edje_calc.c b/legacy/edje/src/lib/edje_calc.c index 6aa6336412..e2642df92d 100644 --- a/legacy/edje/src/lib/edje_calc.c +++ b/legacy/edje/src/lib/edje_calc.c @@ -2840,11 +2840,11 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta else mo = ep->object; if (chosen_desc->map.on) { - Evas_Map *map; + static Evas_Map *map = NULL; ed->have_mapped_part = 1; // create map and populate with part geometry - map = evas_map_new(4); + if (!map) map = evas_map_new(4); evas_map_util_points_populate_from_object(map, ep->object); if (ep->part->type == EDJE_PART_TYPE_IMAGE) { @@ -2898,7 +2898,6 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta evas_object_map_set(mo, map); evas_object_map_enable_set(mo, 1); - evas_map_free(map); } else {