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 <info@metux.net> Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1711>
This commit is contained in:
parent
668d9fc40e
commit
4694b8488e
|
@ -243,7 +243,7 @@ proc_dri3_pixmap_from_buffer(ClientPtr client)
|
||||||
pixmap, X11_RESTYPE_NONE, NULL, DixCreateAccess);
|
pixmap, X11_RESTYPE_NONE, NULL, DixCreateAccess);
|
||||||
|
|
||||||
if (rc != Success) {
|
if (rc != Success) {
|
||||||
(*drawable->pScreen->DestroyPixmap) (pixmap);
|
dixDestroyPixmap(pixmap, 0);
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
if (!AddResource(stuff->pixmap, X11_RESTYPE_PIXMAP, (void *) pixmap))
|
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);
|
pixmap, X11_RESTYPE_NONE, NULL, DixCreateAccess);
|
||||||
|
|
||||||
if (rc != Success) {
|
if (rc != Success) {
|
||||||
(*screen->DestroyPixmap) (pixmap);
|
dixDestroyPixmap(pixmap, 0);
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
if (!AddResource(stuff->pixmap, X11_RESTYPE_PIXMAP, (void *) pixmap))
|
if (!AddResource(stuff->pixmap, X11_RESTYPE_PIXMAP, (void *) pixmap))
|
||||||
|
|
Loading…
Reference in New Issue