From 33a11228cfe80ea4f4bccfebc8ae9d17cf9592ae Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Sun, 15 Jun 2025 12:22:05 -0700 Subject: [PATCH 1/2] Revert "include: unexport no*Extension flags" This reverts commit e3cbde9914f969b99197704785b4253c7e29faa4. Part-of: --- hw/xnest/Args.c | 1 - hw/xwayland/xwayland-screen.c | 1 - include/extinit.h | 50 +++++++++++++++++++++++++++++++++++ include/extinit_priv.h | 16 ----------- include/globals.h | 1 + os/utils.c | 1 - 6 files changed, 51 insertions(+), 19 deletions(-) diff --git a/hw/xnest/Args.c b/hw/xnest/Args.c index dbaf3a7e5..aa87558f3 100644 --- a/hw/xnest/Args.c +++ b/hw/xnest/Args.c @@ -17,7 +17,6 @@ is" without express or implied warranty. #include #include -#include "include/extinit_priv.h" #include "os/ddx_priv.h" #include "screenint.h" diff --git a/hw/xwayland/xwayland-screen.c b/hw/xwayland/xwayland-screen.c index 308879213..7c8d802d0 100644 --- a/hw/xwayland/xwayland-screen.c +++ b/hw/xwayland/xwayland-screen.c @@ -43,7 +43,6 @@ #include "os/osdep.h" #include "os/xserver_poll.h" -#include "extinit_priv.h" #include #include #include diff --git a/include/extinit.h b/include/extinit.h index 937f71e0e..1ad7cf1c3 100644 --- a/include/extinit.h +++ b/include/extinit.h @@ -57,10 +57,60 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. extern _X_EXPORT Bool noCompositeExtension; #endif +#ifdef DAMAGE +extern _X_EXPORT Bool noDamageExtension; +#endif + +#if defined(DBE) +extern _X_EXPORT Bool noDbeExtension; +#endif + +#if defined(DPMSExtension) +extern _X_EXPORT Bool noDPMSExtension; +#endif + +#ifdef GLXEXT +extern _X_EXPORT Bool noGlxExtension; +#endif + #ifdef XINERAMA extern _X_EXPORT Bool noPanoramiXExtension; #endif /* XINERAMA */ +#ifdef RANDR +extern _X_EXPORT Bool noRRExtension; +#endif + +extern _X_EXPORT Bool noRenderExtension; + +#if defined(RES) +extern _X_EXPORT Bool noResExtension; +#endif + +#if defined(SCREENSAVER) +extern _X_EXPORT Bool noScreenSaverExtension; +#endif + +extern _X_EXPORT Bool noShapeExtension; + +#ifdef MITSHM +extern _X_EXPORT Bool noMITShmExtension; +#endif + +#ifdef XCSECURITY +extern _X_EXPORT Bool noSecurityExtension; +#endif + +#ifdef XF86BIGFONT +extern _X_EXPORT Bool noXFree86BigfontExtension; +#endif + +extern _X_EXPORT Bool noXFixesExtension; + +#if defined(XSELINUX) +extern _X_EXPORT Bool noSELinuxExtension; +#endif + #if defined(XV) extern _X_EXPORT Bool noXvExtension; #endif diff --git a/include/extinit_priv.h b/include/extinit_priv.h index 71e7f295d..3b150f6d7 100644 --- a/include/extinit_priv.h +++ b/include/extinit_priv.h @@ -8,22 +8,6 @@ #include "extinit.h" -extern Bool noDamageExtension; -extern Bool noDbeExtension; -extern Bool noDPMSExtension; -extern Bool noGlxExtension; -extern Bool noMITShmExtension; -extern Bool noRenderExtension; -extern Bool noResExtension; -extern Bool noRRExtension; -extern Bool noScreenSaverExtension; -extern Bool noSecurityExtension; -extern Bool noSELinuxExtension; -extern Bool noShapeExtension; -extern Bool noTestExtensions; -extern Bool noXFixesExtension; -extern Bool noXFree86BigfontExtension; - void CompositeExtensionInit(void); void DamageExtensionInit(void); void DbeExtensionInit(void); diff --git a/include/globals.h b/include/globals.h index 65a25855e..1ce5e8d39 100644 --- a/include/globals.h +++ b/include/globals.h @@ -25,6 +25,7 @@ extern _X_EXPORT int monitorResolution; extern _X_EXPORT int defaultColorVisualClass; extern _X_EXPORT int GrabInProgress; +extern _X_EXPORT Bool noTestExtensions; extern _X_EXPORT char *SeatId; extern _X_EXPORT char *ConnectionInfo; extern _X_EXPORT sig_atomic_t inSignalContext; diff --git a/os/utils.c b/os/utils.c index e4e58fe1a..9b8d31370 100644 --- a/os/utils.c +++ b/os/utils.c @@ -119,7 +119,6 @@ __stdcall unsigned long GetTickCount(void); #include "present.h" #include "dixstruct_priv.h" #include "dpmsproc.h" -#include "extinit_priv.h" #define X_INCLUDE_NETDB_H #include From b82110826f843b3bce53a4bfe0890d63d5f05e14 Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Sun, 15 Jun 2025 12:22:36 -0700 Subject: [PATCH 2/2] Revert "os: move out extension disable flags to corresponing extensions" This reverts commit 356e18dcc60b4ba712681b23900e73849de5d126. Part-of: --- Xext/dpms.c | 2 - Xext/panoramiX.c | 3 -- Xext/saver.c | 2 - Xext/security.c | 2 - Xext/shape.c | 2 - Xext/shm.c | 2 - Xext/xf86bigfont.c | 2 - Xext/xres.c | 2 - Xext/xtest.c | 2 - composite/compinit.c | 2 - damageext/damageext.c | 2 - dbe/dbe.c | 1 - glx/vndext.c | 2 - hw/xfree86/common/xf86Extensions.c | 5 --- hw/xnest/Init.c | 4 -- hw/xwayland/xwayland.c | 3 +- os/utils.c | 59 ++++++++++++++++++++++++++++++ randr/randr.c | 2 - render/render.c | 2 - xfixes/xfixes.c | 2 - 20 files changed, 60 insertions(+), 43 deletions(-) diff --git a/Xext/dpms.c b/Xext/dpms.c index 597f5cf4d..5031ba197 100644 --- a/Xext/dpms.c +++ b/Xext/dpms.c @@ -46,8 +46,6 @@ Equipment Corporation. #include "windowstr.h" #include "protocol-versions.h" -Bool noDPMSExtension = FALSE; - CARD16 DPMSPowerLevel = 0; Bool DPMSDisabledSwitch = FALSE; CARD32 DPMSStandbyTime = -1; diff --git a/Xext/panoramiX.c b/Xext/panoramiX.c index 75f9e37b2..f43ae2a95 100644 --- a/Xext/panoramiX.c +++ b/Xext/panoramiX.c @@ -63,9 +63,6 @@ extern VisualPtr glxMatchVisual(ScreenPtr pScreen, VisualPtr pVisual, ScreenPtr pMatchScreen); #endif -/* Xinerama is disabled by default unless enabled via +xinerama */ -Bool noPanoramiXExtension = TRUE; - /* * PanoramiX data declarations */ diff --git a/Xext/saver.c b/Xext/saver.c index 60b250fdd..ad39a57aa 100644 --- a/Xext/saver.c +++ b/Xext/saver.c @@ -67,8 +67,6 @@ in this Software without prior written authorization from the X Consortium. // see: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1355 #undef CreateWindow -Bool noScreenSaverExtension = FALSE; - static int ScreenSaverEventBase = 0; static Bool ScreenSaverHandle(ScreenPtr pScreen, int xstate, Bool force); diff --git a/Xext/security.c b/Xext/security.c index b0715e3df..a717d4881 100644 --- a/Xext/security.c +++ b/Xext/security.c @@ -49,8 +49,6 @@ in this Software without prior written authorization from The Open Group. #include "extinit.h" #include "protocol-versions.h" -Bool noSecurityExtension = FALSE; - /* Extension stuff */ static int SecurityErrorBase; /* first Security error number */ static int SecurityEventBase; /* first Security event number */ diff --git a/Xext/shape.c b/Xext/shape.c index 7a0634ae2..65c55699f 100644 --- a/Xext/shape.c +++ b/Xext/shape.c @@ -48,8 +48,6 @@ in this Software without prior written authorization from The Open Group. #include "extinit_priv.h" #include "protocol-versions.h" -Bool noShapeExtension = FALSE; - typedef RegionPtr (*CreateDftPtr) (WindowPtr /* pWin */ ); diff --git a/Xext/shm.c b/Xext/shm.c index 5d6fd240e..94ecaad84 100644 --- a/Xext/shm.c +++ b/Xext/shm.c @@ -101,8 +101,6 @@ typedef struct _ShmScrPrivateRec { DestroyPixmapProcPtr destroyPixmap; } ShmScrPrivateRec; -Bool noMITShmExtension = FALSE; - static PixmapPtr fbShmCreatePixmap(XSHM_CREATE_PIXMAP_ARGS); static int ShmDetachSegment(void *value, XID shmseg); static void ShmResetProc(ExtensionEntry *extEntry); diff --git a/Xext/xf86bigfont.c b/Xext/xf86bigfont.c index 6dfa811e6..e7cc99fd9 100644 --- a/Xext/xf86bigfont.c +++ b/Xext/xf86bigfont.c @@ -69,8 +69,6 @@ #include "xf86bigfontsrv.h" -Bool noXFree86BigfontExtension = FALSE; - static void XF86BigfontResetProc(ExtensionEntry *extEntry ); #ifdef MITSHM diff --git a/Xext/xres.c b/Xext/xres.c index 90f8bc285..403ab74bb 100644 --- a/Xext/xres.c +++ b/Xext/xres.c @@ -34,8 +34,6 @@ #include "compint.h" #endif -Bool noResExtension = FALSE; - /** @brief Holds fragments of responses for ConstructClientIds. * * note: there is no consideration for data alignment */ diff --git a/Xext/xtest.c b/Xext/xtest.c index 05ac0e967..2798fe258 100644 --- a/Xext/xtest.c +++ b/Xext/xtest.c @@ -61,8 +61,6 @@ #include "inpututils.h" #include "extinit_priv.h" -Bool noTestExtensions = FALSE; - /* XTest events are sent during request processing and may be interrupted by * a SIGIO. We need a separate event list to avoid events overwriting each * other's memory. diff --git a/composite/compinit.c b/composite/compinit.c index e0a565365..88e69d37e 100644 --- a/composite/compinit.c +++ b/composite/compinit.c @@ -49,8 +49,6 @@ #include "compint.h" #include "compositeext.h" -Bool noCompositeExtension = FALSE; - DevPrivateKeyRec CompScreenPrivateKeyRec; DevPrivateKeyRec CompWindowPrivateKeyRec; DevPrivateKeyRec CompSubwindowsPrivateKeyRec; diff --git a/damageext/damageext.c b/damageext/damageext.c index 219cdaad2..47b7de9c1 100644 --- a/damageext/damageext.c +++ b/damageext/damageext.c @@ -54,8 +54,6 @@ static DevPrivateKeyRec DamageClientPrivateKeyRec; #define DamageClientPrivateKey (&DamageClientPrivateKeyRec) -Bool noDamageExtension = FALSE; - static void DamageNoteCritical(ClientPtr pClient) { diff --git a/dbe/dbe.c b/dbe/dbe.c index 0c1f2e589..240448ff2 100644 --- a/dbe/dbe.c +++ b/dbe/dbe.c @@ -51,7 +51,6 @@ #include "xace.h" /* GLOBALS */ -Bool noDbeExtension = FALSE; /* These are globals for use by DDX */ DevPrivateKeyRec dbeScreenPrivKeyRec; diff --git a/glx/vndext.c b/glx/vndext.c index b424dadb0..a0519ff65 100644 --- a/glx/vndext.c +++ b/glx/vndext.c @@ -42,8 +42,6 @@ #include "dix/dix_priv.h" -Bool noGlxExtension = FALSE; - ExtensionEntry *GlxExtensionEntry; int GlxErrorBase = 0; static CallbackListRec vndInitCallbackList; diff --git a/hw/xfree86/common/xf86Extensions.c b/hw/xfree86/common/xf86Extensions.c index 1e6ff7f65..1b8b78505 100644 --- a/hw/xfree86/common/xf86Extensions.c +++ b/hw/xfree86/common/xf86Extensions.c @@ -51,11 +51,6 @@ #include "vidmodestr.h" #endif -Bool noXFree86VidModeExtension = FALSE; -Bool noXFree86DGAExtension = FALSE; -Bool noXFree86DRIExtension = FALSE; -Bool noDRI2Extension = FALSE; - /* * DDX-specific extensions. */ diff --git a/hw/xnest/Init.c b/hw/xnest/Init.c index 36e801f30..fb30d7686 100644 --- a/hw/xnest/Init.c +++ b/hw/xnest/Init.c @@ -52,15 +52,11 @@ is" without express or implied warranty. Bool xnestDoFullGeneration = TRUE; -/* Xnest doesn't support GLX yet, so we don't link it, but still have - satisfy DIX's symbol requirements */ #ifdef GLXEXT void GlxExtensionInit(void) { } - -Bool noGlxExtension = FALSE; #endif void diff --git a/hw/xwayland/xwayland.c b/hw/xwayland/xwayland.c index cc85880af..1ff032287 100644 --- a/hw/xwayland/xwayland.c +++ b/hw/xwayland/xwayland.c @@ -54,7 +54,6 @@ #include #include #include -#include "extinit.h" #include "os/auth.h" @@ -63,7 +62,7 @@ #ifdef XF86VIDMODE #include -Bool noXFree86VidModeExtension; +extern _X_EXPORT Bool noXFree86VidModeExtension; #endif void diff --git a/os/utils.c b/os/utils.c index 9b8d31370..ef1d3eab0 100644 --- a/os/utils.c +++ b/os/utils.c @@ -118,7 +118,66 @@ __stdcall unsigned long GetTickCount(void); #include "miinitext.h" #include "present.h" #include "dixstruct_priv.h" + +Bool noTestExtensions; + +#ifdef COMPOSITE +Bool noCompositeExtension = FALSE; +#endif + +#ifdef DAMAGE +Bool noDamageExtension = FALSE; +#endif +#ifdef DBE +Bool noDbeExtension = FALSE; +#endif +#ifdef DPMSExtension #include "dpmsproc.h" +Bool noDPMSExtension = FALSE; +#endif +#ifdef GLXEXT +Bool noGlxExtension = FALSE; +#endif +#ifdef SCREENSAVER +Bool noScreenSaverExtension = FALSE; +#endif +#ifdef MITSHM +Bool noMITShmExtension = FALSE; +#endif +#ifdef RANDR +Bool noRRExtension = FALSE; +#endif +Bool noRenderExtension = FALSE; +Bool noShapeExtension = FALSE; + +#ifdef XCSECURITY +Bool noSecurityExtension = FALSE; +#endif +#ifdef RES +Bool noResExtension = FALSE; +#endif +#ifdef XF86BIGFONT +Bool noXFree86BigfontExtension = FALSE; +#endif +#ifdef XFreeXDGA +Bool noXFree86DGAExtension = FALSE; +#endif +#ifdef XF86DRI +Bool noXFree86DRIExtension = FALSE; +#endif +#ifdef XF86VIDMODE +Bool noXFree86VidModeExtension = FALSE; +#endif +Bool noXFixesExtension = FALSE; +#ifdef XINERAMA +/* Xinerama is disabled by default unless enabled via +xinerama */ +Bool noPanoramiXExtension = TRUE; +#endif /* XINERAMA */ +#ifdef DRI2 +Bool noDRI2Extension = FALSE; +#endif + +Bool noGEExtension = FALSE; #define X_INCLUDE_NETDB_H #include diff --git a/randr/randr.c b/randr/randr.c index 59d101ba7..3459c4d76 100644 --- a/randr/randr.c +++ b/randr/randr.c @@ -36,8 +36,6 @@ #define SubPixelUnknown 0 #endif -Bool noRRExtension = FALSE; - #define RR_VALIDATE static int RRNScreens; diff --git a/render/render.c b/render/render.c index e97c671af..6386c1962 100644 --- a/render/render.c +++ b/render/render.c @@ -57,8 +57,6 @@ #include "panoramiXsrv.h" #endif /* XINERAMA */ -Bool noRenderExtension = FALSE; - static int ProcRenderQueryVersion(ClientPtr pClient); static int ProcRenderQueryPictFormats(ClientPtr pClient); static int ProcRenderQueryPictIndexValues(ClientPtr pClient); diff --git a/xfixes/xfixes.c b/xfixes/xfixes.c index 007515c55..6634b8179 100644 --- a/xfixes/xfixes.c +++ b/xfixes/xfixes.c @@ -50,8 +50,6 @@ #include "protocol-versions.h" #include "extinit_priv.h" -Bool noXFixesExtension = FALSE; - static unsigned char XFixesReqCode; int XFixesEventBase; int XFixesErrorBase;