From 220d327ee00ec1278d50d4ba8cd20612e8b77c8f Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Fri, 23 Sep 2016 14:06:52 +0300 Subject: [PATCH] Xext: Fix a memory leak Based on: https://patchwork.freedesktop.org/patch/85636/ Rewritten to also free the resources allocated by panoramix_setup_ids(). Signed-off-by: Hans de Goede Reviewed-by: Emi Velikov --- Xext/shm.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Xext/shm.c b/Xext/shm.c index 125000f5f..1b622e353 100644 --- a/Xext/shm.c +++ b/Xext/shm.c @@ -991,7 +991,7 @@ ProcPanoramiXShmCreatePixmap(ClientPtr client) RT_PIXMAP, pMap, RT_NONE, NULL, DixCreateAccess); if (result != Success) { pDraw->pScreen->DestroyPixmap(pMap); - return result; + break; } dixSetPrivate(&pMap->devPrivates, shmPixmapPrivateKey, shmdesc); shmdesc->refcnt++; @@ -1008,7 +1008,7 @@ ProcPanoramiXShmCreatePixmap(ClientPtr client) } } - if (result == BadAlloc) { + if (result != Success) { while (j--) FreeResource(newPix->info[j].id, RT_NONE); free(newPix);