Revert "xwayland: use dixDestroyPixmap() instead of direct driver call"

This reverts commit 0132baa422.

Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2020>
This commit is contained in:
Alan Coopersmith 2025-06-11 17:44:28 -07:00 committed by Marge Bot
parent 23dcedf8ba
commit 21de52dfbe
3 changed files with 6 additions and 4 deletions

View File

@ -180,7 +180,7 @@ update_backing_pixmaps(struct xwl_screen *xwl_screen, int width, int height)
if (old_pixmap) { if (old_pixmap) {
TraverseTree(pRoot, xwl_set_pixmap_visit_window, old_pixmap); TraverseTree(pRoot, xwl_set_pixmap_visit_window, old_pixmap);
dixDestroyPixmap(old_pixmap, 0); pScreen->DestroyPixmap(old_pixmap);
} }
pScreen->ResizeWindow(pRoot, 0, 0, width, height, NULL); pScreen->ResizeWindow(pRoot, 0, 0, width, height, NULL);

View File

@ -97,8 +97,10 @@ xwl_window_buffer_new(struct xwl_window *xwl_window)
static void static void
xwl_window_buffer_destroy_pixmap(struct xwl_window_buffer *xwl_window_buffer) xwl_window_buffer_destroy_pixmap(struct xwl_window_buffer *xwl_window_buffer)
{ {
ScreenPtr pScreen = xwl_window_buffer->pixmap->drawable.pScreen;
xwl_pixmap_del_buffer_release_cb(xwl_window_buffer->pixmap); xwl_pixmap_del_buffer_release_cb(xwl_window_buffer->pixmap);
dixDestroyPixmap(xwl_window_buffer->pixmap, 0); (*pScreen->DestroyPixmap) (xwl_window_buffer->pixmap);
xwl_window_buffer->pixmap = NullPixmap; xwl_window_buffer->pixmap = NullPixmap;
} }
@ -361,7 +363,7 @@ xwl_window_realloc_pixmap(struct xwl_window *xwl_window)
window_pixmap->drawable.width, window_pixmap->drawable.width,
window_pixmap->drawable.height); window_pixmap->drawable.height);
xwl_window_set_pixmap(xwl_window->surface_window, new_window_pixmap); xwl_window_set_pixmap(xwl_window->surface_window, new_window_pixmap);
dixDestroyPixmap(window_pixmap, 0); screen->DestroyPixmap(window_pixmap);
} }
static Bool static Bool

View File

@ -317,7 +317,7 @@ damage_report(DamagePtr pDamage, RegionPtr pRegion, void *data)
window_pixmap = xwl_screen->screen->GetWindowPixmap(xwl_window->surface_window); window_pixmap = xwl_screen->screen->GetWindowPixmap(xwl_window->surface_window);
if (xwl_is_client_pixmap(window_pixmap)) if (xwl_is_client_pixmap(window_pixmap))
dixDestroyPixmap(xwl_window_swap_pixmap(xwl_window, FALSE), 0); xwl_screen->screen->DestroyPixmap(xwl_window_swap_pixmap(xwl_window, FALSE));
} }
static void static void