Branch: r14.0.x

1689b333 2018-06-24 12:55:09 Yuxuan Shui
Avoid using 10bit FBConfigs

Fix weird color issue with Mesa 18.0

(cherry picked from commit a94535c16eb309fdd23648511e0f552fccaf7173)
M twin/compton-tde/opengl.c

twin/compton-tde/opengl.c

diff --git a/twin/compton-tde/opengl.c b/twin/compton-tde/opengl.c
index 4cbfeb4..f30f43c 100644
--- a/twin/compton-tde/opengl.c
+++ b/twin/compton-tde/opengl.c
@@ -811,6 +811,16 @@
     return -1;
   if (!pfbc_b)
     return 1;
+  int tmpattr;
+
+  // Avoid 10-bit colors
+  glXGetFBConfigAttrib(ps->dpy, pfbc_a->cfg, GLX_RED_SIZE, &tmpattr);
+  if (tmpattr != 8)
+    return -1;
+
+  glXGetFBConfigAttrib(ps->dpy, pfbc_b->cfg, GLX_RED_SIZE, &tmpattr);
+  if (tmpattr != 8)
+    return 1;
 
 #define P_CMPATTR_LT(attr) { if ((result = glx_cmp_fbconfig_cmpattr(ps, pfbc_a, pfbc_b, (attr)))) return -result; }
 #define P_CMPATTR_GT(attr) { if ((result = glx_cmp_fbconfig_cmpattr(ps, pfbc_a, pfbc_b, (attr)))) return result; }