From: Michel Dänzer <[email protected]> Fixes crash when running a compositor and DRI_PRIME client via DRI2.
Reported-by: Qiang Yu <[email protected]> Signed-off-by: Michel Dänzer <[email protected]> --- src/amdgpu_glamor.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/amdgpu_glamor.c b/src/amdgpu_glamor.c index 52aa30d..b6ec98f 100644 --- a/src/amdgpu_glamor.c +++ b/src/amdgpu_glamor.c @@ -278,12 +278,17 @@ static Bool amdgpu_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave, void **handle_p) { - struct amdgpu_pixmap *priv = amdgpu_get_pixmap_private(pixmap); + ScreenPtr screen = pixmap->drawable.pScreen; + CARD16 stride; + CARD32 size; + int fd; - if (!priv) + fd = glamor_fd_from_pixmap(screen, pixmap, &stride, &size); + if (fd < 0) return FALSE; - return amdgpu_share_pixmap_backing(priv->bo, handle_p); + *handle_p = (void *)(long)fd; + return TRUE; } static Bool -- 2.8.1 _______________________________________________ xorg-driver-ati mailing list [email protected] https://lists.x.org/mailman/listinfo/xorg-driver-ati
