From b9d6cf45eb3f4bfad9562178f3acaecc9483a5f1 Mon Sep 17 00:00:00 2001 From: Rui Matos Date: Wed, 21 Jan 2015 21:43:02 +0100 Subject: 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 c70f5c13..2be16293 100644 --- a/cogl/winsys/cogl-winsys-egl-kms.c +++ b/cogl/winsys/cogl-winsys-egl-kms.c @@ -1171,6 +1171,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; @@ -1213,6 +1214,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; -- cgit v1.2.1