e_comp: check whether E_Zone is null or not in e_comp_deferred_job 32/271232/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Mon, 14 Feb 2022 04:39:23 +0000 (13:39 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Thu, 17 Feb 2022 04:52:32 +0000 (13:52 +0900)
Change-Id: I748c52dd3ac3f26ac423d9d358e1d1114f458803

src/bin/e_comp.c

index 133649d40431014428dc5ba5623b94e056c723e0..56d706c06d7ea65361d912df6ac841a4e927df27 100644 (file)
@@ -544,12 +544,16 @@ e_comp_deferred_job(void)
 {
    /* Bg update */
    e_main_ts_begin("\tE_BG_Zone Update");
-   if (e_zone_current_get()->bg_object)
-     e_bg_zone_update(e_zone_current_get(), E_BG_TRANSITION_DESK);
+   E_Zone *zone = NULL;
+   zone = e_zone_current_get();
+   EINA_SAFETY_ON_NULL_GOTO(zone, comp_wl_job);
+   if (zone->bg_object)
+     e_bg_zone_update(zone, E_BG_TRANSITION_DESK);
    else
-     e_bg_zone_update(e_zone_current_get(), E_BG_TRANSITION_START);
+     e_bg_zone_update(zone, E_BG_TRANSITION_START);
    e_main_ts_end("\tE_BG_Zone Update Done");
 
+comp_wl_job:
    e_main_ts_begin("\tE_Comp_Wl_Deferred");
    e_comp_wl_deferred_job();
    e_main_ts_end("\tE_Comp_Wl_Deferred Done");