From 1eccc02cfd6563a95dd7d63f1eab76b5cbe39ace Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Wed, 29 May 2019 09:16:41 -0400 Subject: [PATCH] efl_ui_focus_manager/calc: handle redirect setting if no previous redirect set Summary: use same pointer for conditional to improve readability, avoid passing null to efl_ui_focus_manager_reset_history() which cannot be passed null @fix Depends on D8952 Reviewers: bu5hm4n Reviewed By: bu5hm4n Subscribers: bu5hm4n, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8953 --- src/lib/elementary/efl_ui_focus_manager_calc.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/lib/elementary/efl_ui_focus_manager_calc.c b/src/lib/elementary/efl_ui_focus_manager_calc.c index 3ccb48e8a6..29b52f2eb6 100644 --- a/src/lib/elementary/efl_ui_focus_manager_calc.c +++ b/src/lib/elementary/efl_ui_focus_manager_calc.c @@ -821,15 +821,16 @@ _efl_ui_focus_manager_calc_efl_ui_focus_manager_redirect_set(Eo *obj, Efl_Ui_Foc old_manager = pd->redirect; - if (pd->redirect) - efl_event_callback_del(pd->redirect, EFL_EVENT_DEL, _redirect_del, obj); + if (old_manager) + efl_event_callback_del(old_manager, EFL_EVENT_DEL, _redirect_del, obj); pd->redirect = redirect; if (pd->redirect) efl_event_callback_add(pd->redirect, EFL_EVENT_DEL, _redirect_del, obj); - efl_ui_focus_manager_reset_history(old_manager); + if (old_manager) + efl_ui_focus_manager_reset_history(old_manager); //adjust focus property of the most upper element if (_focus_manager_active_get(obj))