diff options
author | Marcel Hollerbach <mail@marcel-hollerbach.de> | 2018-06-19 13:36:04 -0400 |
---|---|---|
committer | Mike Blumenkrantz <zmike@samsung.com> | 2018-06-19 13:36:04 -0400 |
commit | 42018930487c37563745e86c75a1e7816a81fd41 (patch) | |
tree | 7a554b87acdcba9452f6021aa7ed060d51c196d3 | |
parent | 6e46950169bf1a45658af302317f0b0eaa4ad93d (diff) | |
download | efl-42018930487c37563745e86c75a1e7816a81fd41.tar.gz |
eo: make the debug build print leaked errors
Summary: Depends on D6328
Reviewers: devilhorns, zmike
Reviewed By: zmike
Subscribers: cedric, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6329
-rw-r--r-- | src/lib/eo/eo.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/lib/eo/eo.c b/src/lib/eo/eo.c index 6dbd66be64..680dc1f016 100644 --- a/src/lib/eo/eo.c +++ b/src/lib/eo/eo.c @@ -2330,6 +2330,22 @@ efl_object_shutdown(void) if (--_efl_object_init_count > 0) return EINA_TRUE; +#ifdef EO_DEBUG + { + Efl_Object *obj; + Eina_Iterator *objects; + objects = eo_objects_iterator_new(); + printf("Objects leaked by EO:\n"); + printf("class@pointer - user-refcount internal-refcount\n"); + EINA_ITERATOR_FOREACH(objects, obj) + { + printf("%s@%p - %d %d \n", efl_class_name_get(obj), obj, efl_ref_count(obj), ___efl_ref2_count(obj)); + } + eina_iterator_free(objects); + } +#endif + + eina_log_timing(_eo_log_dom, EINA_LOG_STATE_START, EINA_LOG_STATE_SHUTDOWN); |