discomfitor pushed a commit to branch master.
commit a6c1042e39c0a3b2d4420ab5e21cb56d1deb8a29
Author: Mike Blumenkrantz <[email protected]>
Date: Thu May 2 08:04:28 2013 +0100
add free callback to size debugging
---
src/bin/e_utils.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/src/bin/e_utils.c b/src/bin/e_utils.c
index 480c30d..79fcd8f 100644
--- a/src/bin/e_utils.c
+++ b/src/bin/e_utils.c
@@ -1323,6 +1323,17 @@ e_util_time_str_get(long int seconds)
}
static void
+_e_util_size_debug_free(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object
*obj, void *event_info __UNUSED__)
+{
+ int x, y, w, h;
+ const char *name;
+
+ evas_object_geometry_get(obj, &x, &y, &w, &h);
+ name = evas_object_name_get(obj);
+ fprintf(stderr, "FREE %s OBJ[%s%s%p]: (%d,%d) - %dx%d\n",
evas_object_visible_get(obj) ? "VIS" : "HID", name ?: "", name ? "|" : "", obj,
x, y, w, h);
+}
+
+static void
_e_util_size_debug_del(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object
*obj, void *event_info __UNUSED__)
{
int x, y, w, h;
@@ -1359,6 +1370,8 @@ e_util_size_debug_set(Evas_Object *obj, Eina_Bool enable)
_e_util_size_debug, NULL);
evas_object_event_callback_add(obj, EVAS_CALLBACK_DEL,
_e_util_size_debug_del, NULL);
+ evas_object_event_callback_add(obj, EVAS_CALLBACK_FREE,
+ _e_util_size_debug_free, NULL);
}
else
{
@@ -1372,6 +1385,8 @@ e_util_size_debug_set(Evas_Object *obj, Eina_Bool enable)
_e_util_size_debug, NULL);
evas_object_event_callback_del_full(obj, EVAS_CALLBACK_DEL,
_e_util_size_debug_del, NULL);
+ evas_object_event_callback_del_full(obj, EVAS_CALLBACK_FREE,
+ _e_util_size_debug_free, NULL);
}
}
--
------------------------------------------------------------------------------
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1