summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Zhang <zhanglei002@gmail.com>2019-02-27 06:54:05 +0000
committerEmil Velikov <emil.l.velikov@gmail.com>2019-03-06 21:35:53 +0000
commit7c3c0823bafffdc725a2651d8b55ac32acf355da (patch)
tree4c4daba9c14bc00bf3b2e8ed89e8e63c8626dd2e
parent8919ea0672f61f6ad194af808a5b02eaf5de5b0d (diff)
downloadmesa-7c3c0823bafffdc725a2651d8b55ac32acf355da.tar.gz
glx: fix shared memory leak in X11
call XShmDetach to allow X server to free shared memory Fixes: bcd80be49a8260c2233d "drisw/glx: use XShm if possible" Signed-off-by: Ray Zhang <zhanglei002@gmail.com> Reviewed-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit b344e32cdf7064a1f2ff7ef37027edda6589404f)
-rw-r--r--src/glx/drisw_glx.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/glx/drisw_glx.c b/src/glx/drisw_glx.c
index fa0f0d7bf6f..88e45c49f94 100644
--- a/src/glx/drisw_glx.c
+++ b/src/glx/drisw_glx.c
@@ -147,6 +147,9 @@ XDestroyDrawable(struct drisw_drawable * pdp, Display * dpy, XID drawable)
if (pdp->ximage)
XDestroyImage(pdp->ximage);
+ if (pdp->shminfo.shmid > 0)
+ XShmDetach(dpy, &pdp->shminfo);
+
free(pdp->visinfo);
XFreeGC(dpy, pdp->gc);