Signed-off-by: Maarten Maathuis <madman2...@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

_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

Reply via email to