diff options
author | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2019-03-19 21:19:58 +0000 |
---|---|---|
committer | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2019-03-19 21:19:58 +0000 |
commit | 20cdf7268f0006bb9ffa593ffd2235295b561f51 (patch) | |
tree | d931fee6ce2111c6a9a875a00ea0a035dd95e41e /xserver/glx | |
parent | c5e7388ec138dcbf9c68c208cb4764841a0208be (diff) |
Update to xserver 1.19.7. Tested by jca@ and stsp@.
Diffstat (limited to 'xserver/glx')
-rw-r--r-- | xserver/glx/glxdricommon.c | 3 | ||||
-rw-r--r-- | xserver/glx/glxscreens.c | 5 |
2 files changed, 8 insertions, 0 deletions
diff --git a/xserver/glx/glxdricommon.c b/xserver/glx/glxdricommon.c index d3136e87b..dbf199c93 100644 --- a/xserver/glx/glxdricommon.c +++ b/xserver/glx/glxdricommon.c @@ -218,6 +218,9 @@ createModeFromConfig(const __DRIcoreExtension * core, if (duplicateForComp && (render_type_is_pbuffer_only(renderType) || config->config.rgbBits != 32 || + config->config.redBits != 8 || + config->config.greenBits != 8 || + config->config.blueBits != 8 || config->config.visualRating != GLX_NONE || config->config.sampleBuffers != 0)) { free(config); diff --git a/xserver/glx/glxscreens.c b/xserver/glx/glxscreens.c index 29bacd988..62d66bc54 100644 --- a/xserver/glx/glxscreens.c +++ b/xserver/glx/glxscreens.c @@ -275,6 +275,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; |