40 lines
1.5 KiB
Diff
40 lines
1.5 KiB
Diff
From c2954b16c8730c7ed8441fd8dba25900f3aed265 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Tapani=20P=C3=A4lli?= <tapani.palli@intel.com>
|
|
Date: Tue, 28 Nov 2017 09:23:29 +0200
|
|
Subject: [PATCH] glx: do not pick sRGB config for 32-bit RGBA visual
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
This fixes blending issues seen with kwin and gnome-shell when
|
|
32bit visual has sRGB capability set.
|
|
|
|
Reviewed-by: Adam Jackson <ajax@redhat.com>
|
|
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
|
|
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103699
|
|
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103646
|
|
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103655
|
|
---
|
|
glx/glxscreens.c | 5 +++++
|
|
1 file changed, 5 insertions(+)
|
|
|
|
diff --git a/glx/glxscreens.c b/glx/glxscreens.c
|
|
index 73444152a..596d972e0 100644
|
|
--- a/glx/glxscreens.c
|
|
+++ b/glx/glxscreens.c
|
|
@@ -271,6 +271,11 @@ pickFBConfig(__GLXscreen * pGlxScreen, VisualPtr visual)
|
|
/* If it's the 32-bit RGBA visual, demand a 32-bit fbconfig. */
|
|
if (visual->nplanes == 32 && config->rgbBits != 32)
|
|
continue;
|
|
+ /* If it's the 32-bit RGBA visual, do not pick sRGB capable config.
|
|
+ * This can cause issues with compositors that are not sRGB aware.
|
|
+ */
|
|
+ if (visual->nplanes == 32 && config->sRGBCapable == GL_TRUE)
|
|
+ continue;
|
|
/* Can't use the same FBconfig for multiple X visuals. I think. */
|
|
if (config->visualID != 0)
|
|
continue;
|
|
--
|
|
2.17.0
|
|
|