ewd->shell_done = EINA_FALSE;
ewd->sync_done = EINA_FALSE;
+ ewd->recovering = EINA_TRUE;
_ecore_wl2_display_globals_cleanup(ewd);
ewd->wl.display = wl_display_connect(ewd->name);
if (!ewd->wl.display) return EINA_FALSE;
+ ewd->recovering = EINA_FALSE;
+
ewd->wl.registry = wl_display_get_registry(ewd->wl.display);
wl_registry_add_listener(ewd->wl.registry, &_registry_listener, ewd);
ecore_wl2_window_display_get(const Ecore_Wl2_Window *window)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(window, NULL);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(window->display, NULL);
+
+ if (window->display->recovering) return EINA_FALSE;
+
return window->display;
}