From 357d3f30f36878a3010547b669f055a2043cbbaa Mon Sep 17 00:00:00 2001 From: Chia-I Wu Date: Sat, 27 Aug 2011 01:42:16 +0800 Subject: egl_dri2: set ctx->WindowRenderBuffer Set ctx->WindowRenderBuffer to EGL_BACK_BUFFER. As EGL_WINDOW_BIT of a config is set only when there is dri_double_buffer, that makes sure window surfaces are always double-buffered and contexts will render to the back buffer. Reviewed-by: Chad Versace --- src/egl/drivers/dri2/egl_dri2.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c index 4aa1df056cf..0099a0d6d7f 100644 --- a/src/egl/drivers/dri2/egl_dri2.c +++ b/src/egl/drivers/dri2/egl_dri2.c @@ -697,6 +697,12 @@ dri2_create_context(_EGLDriver *drv, _EGLDisplay *disp, _EGLConfig *conf, dri_config = dri2_config->dri_double_config; else dri_config = dri2_config->dri_single_config; + + /* EGL_WINDOW_BIT is set only when there is a dri_double_config. This + * makes sure the back buffer will always be used. + */ + if (conf->SurfaceType & EGL_WINDOW_BIT) + dri2_ctx->base.WindowRenderBuffer = EGL_BACK_BUFFER; } else dri_config = NULL; -- cgit v1.2.3