Mesa (master): nv50: fix GP state bind and validate
Christoph Bumiller
chrisbmr at kemper.freedesktop.org
Tue Sep 28 09:25:17 UTC 2010
Module: Mesa
Branch: master
Commit: e0b93c5bebab8ebd2e387d6031f97c6bc4328dbf
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e0b93c5bebab8ebd2e387d6031f97c6bc4328dbf
Author: Christoph Bumiller <e0425955 at student.tuwien.ac.at>
Date: Mon Sep 27 19:35:50 2010 +0200
nv50: fix GP state bind and validate
---
src/gallium/drivers/nv50/nv50_shader_state.c | 4 ++++
src/gallium/drivers/nv50/nv50_state.c | 2 +-
2 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/src/gallium/drivers/nv50/nv50_shader_state.c b/src/gallium/drivers/nv50/nv50_shader_state.c
index 1a2fe75..6c41e8f 100644
--- a/src/gallium/drivers/nv50/nv50_shader_state.c
+++ b/src/gallium/drivers/nv50/nv50_shader_state.c
@@ -362,6 +362,10 @@ nv50_geomprog_validate(struct nv50_context *nv50)
struct nv50_program *p = nv50->geomprog;
struct nouveau_stateobj *so = NULL;
+ /* GP may be NULL, but VP and FP may not */
+ if (!p)
+ return NULL; /* GP is deactivated in linkage validation */
+
if (!p->translated) {
if (nv50_program_validate(p))
nv50_gp_update_stateobj(nv50, p);
diff --git a/src/gallium/drivers/nv50/nv50_state.c b/src/gallium/drivers/nv50/nv50_state.c
index 3afce06..f42fa2d 100644
--- a/src/gallium/drivers/nv50/nv50_state.c
+++ b/src/gallium/drivers/nv50/nv50_state.c
@@ -663,7 +663,7 @@ nv50_gp_state_bind(struct pipe_context *pipe, void *hwcso)
{
struct nv50_context *nv50 = nv50_context(pipe);
- nv50->fragprog = hwcso;
+ nv50->geomprog = hwcso;
nv50->dirty |= NV50_NEW_GEOMPROG;
}
More information about the mesa-commit
mailing list