diff options
author | Ray Zhang <zhanglei002@gmail.com> | 2019-02-27 06:54:05 +0000 |
---|---|---|
committer | Emil Velikov <emil.l.velikov@gmail.com> | 2019-03-06 21:35:53 +0000 |
commit | 7c3c0823bafffdc725a2651d8b55ac32acf355da (patch) | |
tree | 4c4daba9c14bc00bf3b2e8ed89e8e63c8626dd2e | |
parent | 8919ea0672f61f6ad194af808a5b02eaf5de5b0d (diff) | |
download | mesa-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.c | 3 |
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); |