From f62edffef1686e1196ba8ae5616429997f9e434d Mon Sep 17 00:00:00 2001 From: Jeremy Huddleston Sequoia Date: Tue, 14 Jun 2022 22:10:57 -0700 Subject: [PATCH] Revert "glx: Initialize glx even if there are currently no screens attached" This wasn't intended to be present in the merged patch series. Sorry for the noise. This reverts commit 7e7480ff47dc0789d224f2074f8478ec027008af. --- glx/glxext.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/glx/glxext.c b/glx/glxext.c index 0ce8faa76..c201fba86 100644 --- a/glx/glxext.c +++ b/glx/glxext.c @@ -320,6 +320,23 @@ GlxPushProvider(__GLXprovider * provider) __glXProviderStack = provider; } +static Bool +checkScreenVisuals(void) +{ + int i, j; + + for (i = 0; i < screenInfo.numScreens; i++) { + ScreenPtr screen = screenInfo.screens[i]; + for (j = 0; j < screen->numVisuals; j++) { + if (screen->visuals[j].class == TrueColor || + screen->visuals[j].class == DirectColor) + return True; + } + } + + return False; +} + /* ** Initialize the GLX extension. */ @@ -338,6 +355,10 @@ GlxExtensionInit(void) *stack = &__glXDRISWRastProvider; } + /* Mesa requires at least one True/DirectColor visual */ + if (!checkScreenVisuals()) + return; + __glXContextRes = CreateNewResourceType((DeleteType) ContextGone, "GLXContext"); __glXDrawableRes = CreateNewResourceType((DeleteType) DrawableGone,