e_client: focus_ec NULL check for crash safety 44/113644/4 accepted/tizen/3.0/common/20170209.112938 accepted/tizen/3.0/ivi/20170209.033357 accepted/tizen/3.0/mobile/20170209.033216 accepted/tizen/3.0/tv/20170209.033252 accepted/tizen/3.0/wearable/20170209.033319 accepted/tizen/common/20170208.155346 accepted/tizen/ivi/20170210.004356 accepted/tizen/mobile/20170210.004153 accepted/tizen/tv/20170210.004248 accepted/tizen/wearable/20170210.004307 submit/tizen/20170208.105856 submit/tizen_3.0/20170208.103359
authorSreedeep Moulik <sreedeep.m@samsung.com>
Wed, 8 Feb 2017 08:29:45 +0000 (13:59 +0530)
committerSreedeep Moulik <sreedeep.m@samsung.com>
Wed, 8 Feb 2017 09:16:37 +0000 (14:46 +0530)
Change-Id: I3bf7d9e7b1e3d5b59951a7508f9dac5bf4bda015
Signed-off-by: Sreedeep Moulik <sreedeep.m@samsung.com>
src/bin/e_client.c

index 67f94c385ff709b0ed360752df3fa4a18066a3f8..f02cff3d9776f5c2402d692eb6ac30a771b6a7e4 100644 (file)
@@ -4817,12 +4817,15 @@ e_client_activate(E_Client *ec, Eina_Bool just_do_it)
           e_client_unshade(ec, ec->shade_dir);
         if (!ec->lock_focus_out)
           {
-             E_Client *focus_ec = ec;
+             E_Client *focus_ec = NULL;
              Eina_Bool obscured = EINA_FALSE;
 
              if (ec->transients)
                focus_ec = e_client_transient_child_top_get(ec, EINA_TRUE);
 
+             if (!focus_ec)
+               focus_ec = ec;
+
              obscured = _e_client_check_fully_contain_by_above(focus_ec, EINA_FALSE);
              if (!obscured)
                evas_object_focus_set(focus_ec->frame, 1);