From f2e0e2d785ce65248738af5abf2892904147c906 Mon Sep 17 00:00:00 2001 From: Chris Michael Date: Wed, 25 Jul 2018 14:59:36 -0400 Subject: [PATCH] enlightenment: Ensure we have a valid menu comp object before calling Summary: evas functions This fixes an issue when quickly mousing through menus can cause a segfault in Enlightenment due to menu->comp_object being NULL ref T7030 Reviewers: zmike Reviewed By: zmike Subscribers: cedric Tags: #efl, #enlightenment22 Maniphest Tasks: T7030 Differential Revision: https://phab.enlightenment.org/D6641 --- src/bin/e_menu.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/bin/e_menu.c b/src/bin/e_menu.c index 213e62c12..ea1d9c0e8 100644 --- a/src/bin/e_menu.c +++ b/src/bin/e_menu.c @@ -1176,10 +1176,14 @@ e_menu_idler_before(void) /* phase 4. de-activate... */ EINA_LIST_REVERSE_FOREACH(_e_active_menus, l, m) { - if ((!m->active) && (!evas_object_visible_get(m->comp_object))) + if (!m->active) { - _e_menu_unrealize(m); - removals = eina_list_append(removals, m); + if ((m->realized) && + (!evas_object_visible_get(m->comp_object))) + { + _e_menu_unrealize(m); + removals = eina_list_append(removals, m); + } } } EINA_LIST_FREE(removals, m)