From 4694b8488eeee626016cc0eb9e22c8a758ec4d94 Mon Sep 17 00:00:00 2001 From: "Enrico Weigelt, metux IT consult" Date: Mon, 30 Sep 2024 17:53:58 +0200 Subject: [PATCH] dri3: use dixDestroyPixmap() instead of direct driver call Direct calls to ScreenRec->DestroyPixmap() blocks cleaning up the wrapping jungle, so use the proper dix function instead. See: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1754 Signed-off-by: Enrico Weigelt, metux IT consult Part-of: --- dri3/dri3_request.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dri3/dri3_request.c b/dri3/dri3_request.c index 2c1d5ca85..91240be45 100644 --- a/dri3/dri3_request.c +++ b/dri3/dri3_request.c @@ -243,7 +243,7 @@ proc_dri3_pixmap_from_buffer(ClientPtr client) pixmap, X11_RESTYPE_NONE, NULL, DixCreateAccess); if (rc != Success) { - (*drawable->pScreen->DestroyPixmap) (pixmap); + dixDestroyPixmap(pixmap, 0); return rc; } if (!AddResource(stuff->pixmap, X11_RESTYPE_PIXMAP, (void *) pixmap)) @@ -507,7 +507,7 @@ proc_dri3_pixmap_from_buffers(ClientPtr client) pixmap, X11_RESTYPE_NONE, NULL, DixCreateAccess); if (rc != Success) { - (*screen->DestroyPixmap) (pixmap); + dixDestroyPixmap(pixmap, 0); return rc; } if (!AddResource(stuff->pixmap, X11_RESTYPE_PIXMAP, (void *) pixmap))