diff options
author | Brian Paul <[email protected]> | 2009-12-02 12:24:24 -0700 |
---|---|---|
committer | Brian Paul <[email protected]> | 2009-12-02 12:24:27 -0700 |
commit | debc0b6fa8ce110eb4febc376d8327336259742c (patch) | |
tree | a7555b5be461cd5c19e43e8ce572a815a0e032ea /src/gallium/auxiliary/cso_cache | |
parent | d5e5909f171952bc15f43bc618238fc0699edc09 (diff) |
cso: check if pipe_context::bind_vertex_sampler_states is non-null
Fixes segfaults upon exit when the CSO module is releasing its objects.
Diffstat (limited to 'src/gallium/auxiliary/cso_cache')
-rw-r--r-- | src/gallium/auxiliary/cso_cache/cso_context.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/cso_cache/cso_context.c b/src/gallium/auxiliary/cso_cache/cso_context.c index b6f7b883224..80bd0c91db0 100644 --- a/src/gallium/auxiliary/cso_cache/cso_context.c +++ b/src/gallium/auxiliary/cso_cache/cso_context.c @@ -260,7 +260,8 @@ void cso_release_all( struct cso_context *ctx ) ctx->pipe->bind_blend_state( ctx->pipe, NULL ); ctx->pipe->bind_rasterizer_state( ctx->pipe, NULL ); ctx->pipe->bind_fragment_sampler_states( ctx->pipe, 0, NULL ); - ctx->pipe->bind_vertex_sampler_states(ctx->pipe, 0, NULL); + if (ctx->pipe->bind_vertex_sampler_states) + ctx->pipe->bind_vertex_sampler_states(ctx->pipe, 0, NULL); ctx->pipe->bind_depth_stencil_alpha_state( ctx->pipe, NULL ); ctx->pipe->bind_fs_state( ctx->pipe, NULL ); ctx->pipe->bind_vs_state( ctx->pipe, NULL ); |