From c36e31401d1e8efe657e667d825d41ffb7b9067e Mon Sep 17 00:00:00 2001 From: Rui Matos Date: Wed, 21 Jan 2015 21:43:02 +0100 Subject: [PATCH] kms-winsys: Mark the framebuffer to be bound when setting a new layout We need to bind the context to the new EGL surface we just created. https://bugzilla.gnome.org/show_bug.cgi?id=741881 --- cogl/winsys/cogl-winsys-egl-kms.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cogl/winsys/cogl-winsys-egl-kms.c b/cogl/winsys/cogl-winsys-egl-kms.c index 9be1df10a..86f57c081 100644 --- a/cogl/winsys/cogl-winsys-egl-kms.c +++ b/cogl/winsys/cogl-winsys-egl-kms.c @@ -1177,6 +1177,7 @@ cogl_kms_display_set_layout (CoglDisplay *display, height != kms_display->height) && kms_display->onscreen) { + CoglContext *context = COGL_FRAMEBUFFER (kms_display->onscreen)->context; CoglOnscreenEGL *egl_onscreen = kms_display->onscreen->winsys; CoglOnscreenKMS *kms_onscreen = egl_onscreen->platform; struct gbm_surface *new_surface; @@ -1219,6 +1220,7 @@ cogl_kms_display_set_layout (CoglDisplay *display, egl_onscreen->egl_surface = new_egl_surface; _cogl_framebuffer_winsys_update_size (COGL_FRAMEBUFFER (kms_display->onscreen), width, height); + context->current_draw_buffer_changes |= COGL_FRAMEBUFFER_STATE_BIND; } kms_display->width = width;