From: Cedric Bail Date: Mon, 19 Mar 2018 22:39:14 +0000 (-0700) Subject: elementary: make sure windows are not born orfan and properly have at least a main... X-Git-Tag: upstream/1.21.0~1583 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9a10b00783d50b0d7452ca5190a03dab5d7cb31b;p=platform%2Fupstream%2Fefl.git elementary: make sure windows are not born orfan and properly have at least a main loop as parent. --- diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c index 043741c..3a58f7b 100644 --- a/src/lib/elementary/efl_ui_win.c +++ b/src/lib/elementary/efl_ui_win.c @@ -9294,6 +9294,7 @@ elm_win_window_id_get(const Evas_Object *obj) if (!evas_object_smart_type_check_ptr(obj, MY_CLASS_NAME_LEGACY)) { Ecore_Evas *ee = ecore_evas_ecore_evas_get(evas_object_evas_get(obj)); + if (!ee) return NULL; return ecore_evas_window_get(ee); } diff --git a/src/lib/elementary/elm_part_helper.h b/src/lib/elementary/elm_part_helper.h index 1402f49..019f356 100644 --- a/src/lib/elementary/elm_part_helper.h +++ b/src/lib/elementary/elm_part_helper.h @@ -68,7 +68,7 @@ _elm_part_initialize(Eo *proxy, Eo *obj, const char *part) static inline Eo * ELM_PART_IMPLEMENT(const Efl_Class *part_klass, const Eo *obj, const char *part) { - return efl_add(part_klass, NULL, + return efl_add(part_klass, (Eo *) obj, _elm_part_initialize(efl_added, (Eo *) obj, part)); } diff --git a/src/lib/elementary/elm_widget.h b/src/lib/elementary/elm_widget.h index 35986c6..f3688fd 100644 --- a/src/lib/elementary/elm_widget.h +++ b/src/lib/elementary/elm_widget.h @@ -952,7 +952,7 @@ Eina_Bool _elm_widget_item_color_class_update(Elm_Widget_Item_Data *sd); *******/ #define elm_legacy_add(k, p, ...) ({ \ - efl_add(k, p, efl_canvas_object_legacy_ctor(efl_added), ##__VA_ARGS__); }) + efl_add(k, p ? p : efl_main_loop_get(), efl_canvas_object_legacy_ctor(efl_added), ##__VA_ARGS__); }) static inline Eo * elm_widget_resize_object_get(const Eo *obj)