[Nouveau] [PATCH 1/2] nouveau/exa: unref bo if map failed
Maarten Maathuis
madman2003 at gmail.com
Mon Jun 18 15:28:59 PDT 2012
Signed-off-by: Maarten Maathuis <madman2003 at gmail.com>
---
src/nouveau_exa.c | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
index 55dce99..c51a799 100644
--- a/src/nouveau_exa.c
+++ b/src/nouveau_exa.c
@@ -175,11 +175,15 @@ nouveau_exa_scratch(NVPtr pNv, int size, struct nouveau_bo **pbo, int *off)
ret = nouveau_bo_new(pNv->dev, NOUVEAU_BO_GART | NOUVEAU_BO_MAP,
0, NOUVEAU_ALIGN(size, 1 * 1024 * 1024),
NULL, &bo);
- if (ret == 0)
- ret = nouveau_bo_map(bo, NOUVEAU_BO_RDWR, pNv->client);
if (ret != 0)
return ret;
+ ret = nouveau_bo_map(bo, NOUVEAU_BO_RDWR, pNv->client);
+ if (ret != 0) {
+ nouveau_bo_ref(NULL, &bo);
+ return ret;
+ }
+
nouveau_bo_ref(bo, &pNv->transfer);
pNv->transfer_offset = 0;
}
--
1.7.8.6
More information about the Nouveau
mailing list