set e_comp->gl for wayland compositors based on gl display bind success

This commit is contained in:
Mike Blumenkrantz 2015-11-07 12:23:04 -05:00
parent 7bedc8eea6
commit 4250a14861
1 changed files with 2 additions and 3 deletions

View File

@ -2661,15 +2661,14 @@ static void
_e_comp_wl_gl_init(void *d EINA_UNUSED)
{
e_comp_wl->wl.gl = evas_gl_new(e_comp->evas);
e_comp->gl = !!e_comp_wl->wl.gl;
if (!e_comp->gl) return;
if (!e_comp_wl->wl.gl) return;
e_comp_wl->wl.glctx = evas_gl_context_create(e_comp_wl->wl.gl, NULL);
e_comp_wl->wl.glcfg = evas_gl_config_new();
e_comp_wl->wl.glsfc = evas_gl_surface_create(e_comp_wl->wl.gl, e_comp_wl->wl.glcfg, 1, 1);
evas_gl_make_current(e_comp_wl->wl.gl, e_comp_wl->wl.glsfc, e_comp_wl->wl.glctx);
e_comp_wl->wl.glapi = evas_gl_context_api_get(e_comp_wl->wl.gl, e_comp_wl->wl.glctx);
if (e_comp_wl->wl.glapi->evasglBindWaylandDisplay)
e_comp_wl->wl.glapi->evasglBindWaylandDisplay(e_comp_wl->wl.gl, e_comp_wl->wl.disp);
e_comp->gl = e_comp_wl->wl.glapi->evasglBindWaylandDisplay(e_comp_wl->wl.gl, e_comp_wl->wl.disp);
else
_e_comp_wl_gl_shutdown();
}