From 2c8ad1a0086bcbcce7fdc89adfa95db615f8b1a2 Mon Sep 17 00:00:00 2001 From: "Enrico Weigelt, metux IT consult" Date: Mon, 13 Oct 2025 13:37:22 +0200 Subject: [PATCH] Xext: shm: fix missing ScreenClose hook registration ShmScreenClose() needs to be registered as ScreenClose hook into all screens - otherwise it won't be called and so we're missing cleanup work. Signed-off-by: Enrico Weigelt, metux IT consult --- Xext/shm.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Xext/shm.c b/Xext/shm.c index 0fcae5fa8d..106a6ec5ff 100644 --- a/Xext/shm.c +++ b/Xext/shm.c @@ -203,6 +203,7 @@ ShmScreenClose(CallbackListPtr *pcbl, ScreenPtr pScreen, void *unused) dixSetPrivate(&pScreen->devPrivates, shmScrPrivateKey, NULL); free(screen_priv); + dixScreenUnhookClose(pScreen, ShmScreenClose); } static ShmScrPrivateRec * @@ -1401,6 +1402,7 @@ ShmExtensionInit(void) screen_priv->shmFuncs = &miFuncs; if (!screen_priv->shmFuncs->CreatePixmap) sharedPixmaps = xFalse; + dixScreenHookClose(walkScreen, ShmScreenClose); }); if (sharedPixmaps) DIX_FOR_EACH_SCREEN({