diff options
author | Hosang Kim <hosang12.kim@samsung.com> | 2020-03-17 09:52:59 -0400 |
---|---|---|
committer | Mike Blumenkrantz <zmike@samsung.com> | 2020-03-17 09:52:59 -0400 |
commit | 91ab84286a87521fea9f7eba587e0a095c8dcc5d (patch) | |
tree | 771f6a77c9033858f2392d270ca9b4c8c3ee2b72 | |
parent | 3b28c4770b7d280e65a4da01c1ea732e8f577bef (diff) | |
download | efl-91ab84286a87521fea9f7eba587e0a095c8dcc5d.tar.gz |
edje_message_queue: decrease number of messages when message is removed.
Summary:
Sometimes edje_message_del is called while processing edje message.
It makes double free corruption.
Reviewers: raster, bu5hm4n, zmike
Reviewed By: zmike
Subscribers: bu5hm4n, zmike, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11393
-rw-r--r-- | src/lib/edje/edje_message_queue.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lib/edje/edje_message_queue.c b/src/lib/edje/edje_message_queue.c index 020f89b46d..d92601073b 100644 --- a/src/lib/edje/edje_message_queue.c +++ b/src/lib/edje/edje_message_queue.c @@ -223,6 +223,7 @@ again: if (!lookup_ed) continue; tmp_msgq = eina_inlist_remove(tmp_msgq, &(em->inlist_main)); lookup_ed->messages = eina_inlist_remove(lookup_ed->messages, &(em->inlist_edje)); + lookup_ed->message.num--; if (!lookup_ed->delete_me) { lookup_ed->processing_messages++; |