From 6346e501ac4146b3fdff8d36ef575e5fbbd96e34 Mon Sep 17 00:00:00 2001 From: Stanislav Vorobiov Date: Wed, 28 Aug 2013 10:14:35 +0400 Subject: [PATCH] subsurfaces: fix rendering problem with cairo-glesv2 when using cairo-glesv2 subsurface rendering code implicitly calls eglMakeCurrent(dpy, NULL, NULL, ctx) (since EGL_KHR_surfaceless_context is used), thus, triangle_frame_callback:eglSwapBuffers returns EGL_BAD_SURFACE error for all invocations other that the first one --- clients/subsurfaces.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/clients/subsurfaces.c b/clients/subsurfaces.c index 51b07a2f3..101ff17ef 100644 --- a/clients/subsurfaces.c +++ b/clients/subsurfaces.c @@ -398,6 +398,9 @@ triangle_frame_callback(void *data, struct wl_callback *callback, if (callback) wl_callback_destroy(callback); + eglMakeCurrent(tri->egl->dpy, tri->egl_surface, + tri->egl_surface, tri->egl->ctx); + glViewport(0, 0, tri->width, tri->height); triangle_draw(&tri->gl, tri->time);