From 00d8e960ca665b7f0528438331f4d0ae77fbb4cc Mon Sep 17 00:00:00 2001 From: Maarten Maathuis Date: Thu, 19 Mar 2009 23:59:42 +0100 Subject: libdrm/nouveau: unref fences when deleting bo - This was causing a significant memory leak. --- libdrm/nouveau/nouveau_bo.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'libdrm') diff --git a/libdrm/nouveau/nouveau_bo.c b/libdrm/nouveau/nouveau_bo.c index e8232ef2..860efa14 100644 --- a/libdrm/nouveau/nouveau_bo.c +++ b/libdrm/nouveau/nouveau_bo.c @@ -413,6 +413,10 @@ nouveau_bo_del_cb(void *priv) { struct nouveau_bo_priv *nvbo = priv; + if (nvbo->fence) + nouveau_fence_ref(NULL, &nvbo->fence); + if (nvbo->wr_fence) + nouveau_fence_ref(NULL, &nvbo->wr_fence); nouveau_bo_kfree(nvbo); free(nvbo); } -- cgit v1.2.3