diff --git a/legacy/evas/src/lib/canvas/evas_events.c b/legacy/evas/src/lib/canvas/evas_events.c index abbe10d56f..1f8b42b4eb 100644 --- a/legacy/evas/src/lib/canvas/evas_events.c +++ b/legacy/evas/src/lib/canvas/evas_events.c @@ -80,6 +80,8 @@ evas_event_thaw(Evas *e) return; MAGIC_CHECK_END(); e->events_frozen--; + if (e->events_frozen < 0) + evas_debug_generic(" Thaw of events when already thawed!!!\n"); } /** diff --git a/legacy/evas/src/lib/include/evas_private.h b/legacy/evas/src/lib/include/evas_private.h index 234d9d63e0..b83ed7e712 100644 --- a/legacy/evas/src/lib/include/evas_private.h +++ b/legacy/evas/src/lib/include/evas_private.h @@ -593,6 +593,7 @@ void evas_debug_error(void); void evas_debug_input_null(void); void evas_debug_magic_null(void); void evas_debug_magic_wrong(DATA32 expected, DATA32 supplied); +void evas_debug_generic(const char *str); char *evas_debug_magic_string_get(DATA32 magic); void evas_object_smart_use(Evas_Smart *s); void evas_object_smart_unuse(Evas_Smart *s); diff --git a/legacy/evas/src/lib/main.c b/legacy/evas/src/lib/main.c index c7619b9bc0..7a25b433f0 100644 --- a/legacy/evas/src/lib/main.c +++ b/legacy/evas/src/lib/main.c @@ -153,6 +153,22 @@ evas_debug_magic_wrong(DATA32 expected, DATA32 supplied) if (_evas_debug_abort) abort(); } +void +evas_debug_generic(const char *str) +{ + if (!_evas_debug_init) + { + if (getenv("EVAS_DEBUG_SHOW")) _evas_debug_show = 1; + if (getenv("EVAS_DEBUG_ABORT")) _evas_debug_abort = 1; + _evas_debug_init = 1; + } + if (_evas_debug_show) + fprintf(stderr, + "*** EVAS ERROR:\n" + "%s", (char *)str); + if (_evas_debug_abort) abort(); +} + char * evas_debug_magic_string_get(DATA32 magic) {