summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYeongJong Lee <yj34.lee@samsung.com>2018-01-15 19:55:37 +0900
committerJaehyun Cho <jae_hyun.cho@samsung.com>2018-01-15 19:55:37 +0900
commitf7849d07278c063ba4bd49cb298eba2ec1f2a337 (patch)
treeca1ffe9a4e6ba243fb70734534eb725f3929e252
parent8fc21da029b7d337be42c436e6e2f05837c10412 (diff)
elc_popup: reorder the sub objects free sequence
Summary: when the popup is deleted, some EVAS_CALLBACK_DEL callback functions try to use already freed objects. reorder free sequence to prevent it. Test Plan: 1. elementary_test -to popup 2. check 'Enable popup scroll' 3. open several popup test and click Close button. 4. check that there are no error message Reviewers: Jaehyun_Cho, bu5hm4n Reviewed By: Jaehyun_Cho Subscribers: cedric, jpeg, herb Differential Revision: https://phab.enlightenment.org/D5730
-rw-r--r--src/lib/elementary/elc_popup.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c
index 598f9710e2..b95482f0fc 100644
--- a/src/lib/elementary/elc_popup.c
+++ b/src/lib/elementary/elc_popup.c
@@ -252,17 +252,17 @@ _elm_popup_efl_canvas_group_group_del(Eo *obj, Elm_Popup_Data *sd)
252 } 252 }
253 253
254 // XXX? delete other objects? just to be sure. 254 // XXX? delete other objects? just to be sure.
255 ELM_SAFE_FREE(sd->main_layout, evas_object_del);
256 ELM_SAFE_FREE(sd->notify, evas_object_del); 255 ELM_SAFE_FREE(sd->notify, evas_object_del);
257 ELM_SAFE_FREE(sd->title_icon, evas_object_del); 256 ELM_SAFE_FREE(sd->title_icon, evas_object_del);
258 ELM_SAFE_FREE(sd->content_area, evas_object_del);
259 ELM_SAFE_FREE(sd->text_content_obj, evas_object_del); 257 ELM_SAFE_FREE(sd->text_content_obj, evas_object_del);
260 ELM_SAFE_FREE(sd->action_area, evas_object_del);
261 ELM_SAFE_FREE(sd->box, evas_object_del); 258 ELM_SAFE_FREE(sd->box, evas_object_del);
262 ELM_SAFE_FREE(sd->tbl, evas_object_del); 259 ELM_SAFE_FREE(sd->tbl, evas_object_del);
263 ELM_SAFE_FREE(sd->spacer, evas_object_del); 260 ELM_SAFE_FREE(sd->spacer, evas_object_del);
264 ELM_SAFE_FREE(sd->scr, evas_object_del); 261 ELM_SAFE_FREE(sd->scr, evas_object_del);
265 ELM_SAFE_FREE(sd->content, evas_object_del); 262 ELM_SAFE_FREE(sd->content, evas_object_del);
263 ELM_SAFE_FREE(sd->main_layout, evas_object_del);
264 ELM_SAFE_FREE(sd->content_area, evas_object_del);
265 ELM_SAFE_FREE(sd->action_area, evas_object_del);
266 ELM_SAFE_FREE(sd->title_text, eina_stringshare_del); 266 ELM_SAFE_FREE(sd->title_text, eina_stringshare_del);
267 267
268 efl_canvas_group_del(efl_super(obj, MY_CLASS)); 268 efl_canvas_group_del(efl_super(obj, MY_CLASS));