From f7077c5400be4141e50a8724aab2d0b10ee5188c Mon Sep 17 00:00:00 2001 From: Gwanglim Lee Date: Wed, 5 Jun 2013 16:53:33 +0900 Subject: [PATCH] [ILLUME] Fixed crash problem when active indicator border is deleting Change-Id: Ia63c1649b9ae7466f0271964d82a9915904c7403 --- illume2-tizen/src/policies/illume/policy.c | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/illume2-tizen/src/policies/illume/policy.c b/illume2-tizen/src/policies/illume/policy.c index 1e1e176..4845fbf 100644 --- a/illume2-tizen/src/policies/illume/policy.c +++ b/illume2-tizen/src/policies/illume/policy.c @@ -6311,15 +6311,27 @@ _policy_property_indicator_cmd_win_change(Ecore_X_Event_Window_Property *event) static void _policy_property_active_indicator_win_change(Ecore_X_Event_Window_Property *event) { - Ecore_X_Window active_win; - E_Border *bd; + Ecore_X_Window active_win = 0; + E_Border *bd = NULL; + + if (!event) return; active_win = _policy_active_indicator_win_get(event->win); - if (dep_rot.refer.active_win != active_win) + if (!active_win) { - dep_rot.refer.active_win = active_win; + ELB(ELBT_ROT, "ERR! NO ACTIVE_INDI_WIN", event->win); + return; + } + if (dep_rot.refer.active_win != active_win) + { bd = e_border_find_by_client_window(active_win); + if (!bd) + { + ELB(ELBT_ROT, "ERR! NO BD ACTIVE_INDI_WIN", active_win); + return; + } + dep_rot.refer.active_win = active_win; _policy_border_dependent_rotation(bd); } } -- 2.7.4