From: Gwanglim Lee Date: Fri, 10 Apr 2015 09:05:59 +0000 (+0900) Subject: wl_drm: add check bind wayland display api to prevent segfault when enlightenment... X-Git-Tag: accepted/tizen/common/20150414.100010^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7e36d31132251ed8ca2bbe313d71d1bc51116da9;p=platform%2Fupstream%2Fenlightenment.git wl_drm: add check bind wayland display api to prevent segfault when enlightenment is trying to run on sw mesa Change-Id: Ief1172a4816a01ac91b52b0c3996eafe152647e5 --- diff --git a/src/modules/wl_drm/e_mod_main.c b/src/modules/wl_drm/e_mod_main.c index 85d69a1..7d4f069 100644 --- a/src/modules/wl_drm/e_mod_main.c +++ b/src/modules/wl_drm/e_mod_main.c @@ -112,6 +112,30 @@ e_modapi_init(E_Module *m) if (!comp->ee) e_comp_gl_set(EINA_FALSE); + else + { + Evas_GL *evasgl = NULL; + Evas_GL_API *glapi = NULL; + + evasgl = evas_gl_new(ecore_evas_get(comp->ee)); + if (evasgl) + { + glapi = evas_gl_api_get(evasgl); + if (!((glapi) && (glapi->evasglBindWaylandDisplay))) + { + e_comp_gl_set(EINA_FALSE); + ecore_evas_free(comp->ee); + comp->ee = NULL; + } + } + else + { + e_comp_gl_set(EINA_FALSE); + ecore_evas_free(comp->ee); + comp->ee = NULL; + } + evas_gl_free(evasgl); + } } /* fallback to framebuffer drm (non-accel) */