Mesa (7.11): nv50/nvc0: fix crash when channel allocation fails

Marcin Åšlusarz mslusarz at kemper.freedesktop.org
Sun Dec 11 16:02:35 UTC 2011


Module: Mesa
Branch: 7.11
Commit: 237d6fa97a3c94b1ffb9d0ce230b8c7b95fccae4
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=237d6fa97a3c94b1ffb9d0ce230b8c7b95fccae4

Author: Marcin Slusarz <marcin.slusarz at gmail.com>
Date:   Fri Nov 11 20:45:08 2011 +0100

nv50/nvc0: fix crash when channel allocation fails

---

 src/gallium/drivers/nv50/nv50_screen.c |    3 ++-
 src/gallium/drivers/nvc0/nvc0_screen.c |    3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c
index 4fcf529..f176a86 100644
--- a/src/gallium/drivers/nv50/nv50_screen.c
+++ b/src/gallium/drivers/nv50/nv50_screen.c
@@ -215,7 +215,8 @@ nv50_screen_destroy(struct pipe_screen *pscreen)
       nouveau_fence_wait(screen->base.fence.current);
       nouveau_fence_ref (NULL, &screen->base.fence.current);
    }
-   screen->base.channel->user_private = NULL;
+   if (screen->base.channel)
+      screen->base.channel->user_private = NULL;
 
    nouveau_bo_ref(NULL, &screen->code);
    nouveau_bo_ref(NULL, &screen->tls_bo);
diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c
index 0946fd7..43eb6ce 100644
--- a/src/gallium/drivers/nvc0/nvc0_screen.c
+++ b/src/gallium/drivers/nvc0/nvc0_screen.c
@@ -202,7 +202,8 @@ nvc0_screen_destroy(struct pipe_screen *pscreen)
       nouveau_fence_wait(screen->base.fence.current);
       nouveau_fence_ref(NULL, &screen->base.fence.current);
    }
-   screen->base.channel->user_private = NULL;
+   if (screen->base.channel)
+      screen->base.channel->user_private = NULL;
 
    nouveau_bo_ref(NULL, &screen->text);
    nouveau_bo_ref(NULL, &screen->tls);




More information about the mesa-commit mailing list