From 8a368d808fec166b5fb3dfe6312aab22c7ee20af Mon Sep 17 00:00:00 2001 From: Hodong Date: Thu, 20 Jan 2022 00:57:41 +0900 Subject: Fix two memory leaks in _XFreeX11XCBStructure() Even when XCloseDisplay() was called, some memory was leaked. XCloseDisplay() calls _XFreeDisplayStructure(), which calls _XFreeX11XCBStructure(). However, _XFreeX11XCBStructure() did not destroy the condition variables, resulting in the leaking of some 40 bytes. Signed-off-by: Hodong --- src/xcb_disp.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/xcb_disp.c b/src/xcb_disp.c index 70a602f4..e9becee3 100644 --- a/src/xcb_disp.c +++ b/src/xcb_disp.c @@ -102,6 +102,8 @@ void _XFreeX11XCBStructure(Display *dpy) dpy->xcb->pending_requests = tmp->next; free(tmp); } + xcondition_clear(dpy->xcb->event_notify); + xcondition_clear(dpy->xcb->reply_notify); xcondition_free(dpy->xcb->event_notify); xcondition_free(dpy->xcb->reply_notify); Xfree(dpy->xcb); -- cgit v1.2.1