summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2017-02-16 20:17:12 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2017-02-16 20:17:12 +0900
commita014b2140069c8c9b03f048698537abe7316cc10 (patch)
tree3215723a30e3b2addbe2ca8f589d72c7f24fe1b2
parent8226fb2e8710eec05d6bbc7bc9651f7543259cd1 (diff)
downloadefl-a014b2140069c8c9b03f048698537abe7316cc10.tar.gz
evas: Flush post-event callbacks only when needed
This avoids flushing the post-event cb queue when processing recursive events. See 54e5841b2f6386765dd5e2831aa3481b952e5.
-rw-r--r--src/lib/evas/canvas/evas_callbacks.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/evas/canvas/evas_callbacks.c b/src/lib/evas/canvas/evas_callbacks.c
index d4fd95301b..c57682c242 100644
--- a/src/lib/evas/canvas/evas_callbacks.c
+++ b/src/lib/evas/canvas/evas_callbacks.c
@@ -246,9 +246,10 @@ _evas_post_event_callback_call(Evas *eo_e, Evas_Public_Data *e, int min_event_id
e->running_post_events--;
_evas_unwalk(e);
- if (!e->running_post_events && e->post_events)
+ if (!e->running_post_events && e->post_events
+ && (e->current_event == EVAS_CALLBACK_LAST))
{
- WRN("Not all post-event callbacks hve been processed!");
+ WRN("Not all post-event callbacks have been processed!");
_evas_post_event_callback_call(eo_e, e, 0);
}
}