diff options
author | Brian <[email protected]> | 2008-03-11 18:54:31 -0600 |
---|---|---|
committer | Brian <[email protected]> | 2008-03-11 18:55:58 -0600 |
commit | 339e7ec6805e6de8794514c0a935081b5d36d38f (patch) | |
tree | 19a929546b9c5c6ffed958378a23c84eaa4c67a6 /src/gallium/auxiliary/draw/draw_pstipple.c | |
parent | 21ff00306131cd5598f95285badaaabc98021e11 (diff) |
gallium: rework CSO-related code in state tracker
Use the code in cso_context.c rather than st_cache.c.
Basically, binding of state objects now goes through the CSO module.
But Vertex/fragment shaders go through pipe->bind_fs/vs_state() since they're
not cached by the CSO module at this time.
Also, update softpipe driver to handle NULL state objects in various places.
This happens during context destruction. May need to update other drivers...
Diffstat (limited to 'src/gallium/auxiliary/draw/draw_pstipple.c')
-rw-r--r-- | src/gallium/auxiliary/draw/draw_pstipple.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/draw/draw_pstipple.c b/src/gallium/auxiliary/draw/draw_pstipple.c index b3e52dc1c79..ed50d0805a7 100644 --- a/src/gallium/auxiliary/draw/draw_pstipple.c +++ b/src/gallium/auxiliary/draw/draw_pstipple.c @@ -595,7 +595,8 @@ pstip_bind_fs_state(struct pipe_context *pipe, void *fs) /* save current */ pstip->fs = aafs; /* pass-through */ - pstip->driver_bind_fs_state(pstip->pipe, aafs->driver_fs); + pstip->driver_bind_fs_state(pstip->pipe, + (aafs ? aafs->driver_fs : NULL)); } |