From 316948734c2bba72d42c4cf4530932b5862c109f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Fri, 11 Mar 2016 12:21:06 +0900 Subject: [PATCH] glamor: Make context current in glamor_pixmap_fbo_cache_put MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Without this, we may be manipulating the context of another screen. In a system with two GPUs using glamor, this fixes lots of (EE) glamor256: GL error: GL_INVALID_OPERATION in glBindTexture(non-gen name) spew since 0b4c0c75 ('glamor: Replace "finish access" shader with texture swizzling'). Signed-off-by: Michel Dänzer Reviewed-by: Dave Airlie --- glamor/glamor_fbo.c | 1 + 1 file changed, 1 insertion(+) diff --git a/glamor/glamor_fbo.c b/glamor/glamor_fbo.c index d5311a909..a531f6052 100644 --- a/glamor/glamor_fbo.c +++ b/glamor/glamor_fbo.c @@ -174,6 +174,7 @@ glamor_pixmap_fbo_cache_put(glamor_screen_private *glamor_priv, * glamor_picture.c. Don't reset GL_RED -> GL_ALPHA swizzle, though */ if (glamor_priv->has_texture_swizzle && n_format != 2) { + glamor_make_current(glamor_priv); glBindTexture(GL_TEXTURE_2D, fbo->tex); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_R, GL_RED); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_G, GL_GREEN);