mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 08:50:13 +01:00
softpipe: fix softpipe_delete_fs_state() failed assertion
The var!=softpipe->fs_variant assertion was failing because we weren't nulling the softpipe->fs_variant pointer when binding a new shader. Since softpipe->fs_variant depends on the current fs, it's of no use when a new FS is bound. Fixes http://bugs.freedesktop.org/show_bug.cgi?id=53318 Note: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca <jfonseca@vmware.com>
This commit is contained in:
parent
3487b93cc4
commit
16c702ef3b
1 changed files with 4 additions and 2 deletions
|
|
@ -158,8 +158,10 @@ softpipe_bind_fs_state(struct pipe_context *pipe, void *fs)
|
|||
|
||||
softpipe->fs = fs;
|
||||
|
||||
if (fs == NULL)
|
||||
softpipe->fs_variant = NULL;
|
||||
/* This depends on the current fragment shader and must always be
|
||||
* re-validated before use.
|
||||
*/
|
||||
softpipe->fs_variant = NULL;
|
||||
|
||||
if (state)
|
||||
draw_bind_fragment_shader(softpipe->draw,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue