From 09602687a06f896416d5956a307f0d9a12487867 Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Mon, 31 Oct 2005 07:06:52 +0000 Subject: [PATCH] fix hash calls, fix object leak. :) SVN revision: 18162 --- legacy/evas/src/lib/canvas/evas_render.c | 3 ++- legacy/evas/src/lib/data/evas_hash.c | 7 +++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/legacy/evas/src/lib/canvas/evas_render.c b/legacy/evas/src/lib/canvas/evas_render.c index 0a717685dd..f2b739cf02 100644 --- a/legacy/evas/src/lib/canvas/evas_render.c +++ b/legacy/evas/src/lib/canvas/evas_render.c @@ -74,7 +74,8 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active evas_object_clip_recalc(obj); /* build active object list */ is_active = evas_object_is_active(obj); - if (is_active) *active_objects = evas_list_append(*active_objects, obj); + if ((is_active) || (obj->delete_me != 0)) + *active_objects = evas_list_append(*active_objects, obj); if (restack) { obj->restack = 1; diff --git a/legacy/evas/src/lib/data/evas_hash.c b/legacy/evas/src/lib/data/evas_hash.c index 61895c6e7d..8df9da0eb7 100644 --- a/legacy/evas/src/lib/data/evas_hash.c +++ b/legacy/evas/src/lib/data/evas_hash.c @@ -164,8 +164,8 @@ evas_hash_del(Evas_Hash *hash, const char *key, const void *data) for (l = hash->buckets[hash_num]; l; l = l->next) { el = (Evas_Hash_El *)l; - if ((((el->key) && (key) && (!strcmp(el->key, key))) || - ((!el->key) && (!key))) && (el->data == data)) + if (((el->key) && (key) && (!strcmp(el->key, key))) || + ((!key) && (el->data == data))) { hash->buckets[hash_num] = evas_object_list_remove(hash->buckets[hash_num], el); if (el->key) free(el->key); @@ -240,8 +240,7 @@ evas_hash_modify(Evas_Hash *hash, const char *key, const void *data) for (l = hash->buckets[hash_num]; l; l = l->next) { el = (Evas_Hash_El *)l; - if (((el->key) && (key) && (!strcmp(el->key, key))) || - ((!el->key) && (!key))) + if ((el->key) && (key) && (!strcmp(el->key, key))) { void *old_data;