llvmpipe: Ensure context is flushed when destroying shaders.

This commit is contained in:
José Fonseca 2010-03-03 18:47:29 +00:00
parent b87406e55f
commit 4d5dd82558
1 changed files with 7 additions and 0 deletions

View File

@ -974,6 +974,13 @@ llvmpipe_delete_fs_state(struct pipe_context *pipe, void *fs)
assert(fs != llvmpipe->fs);
(void) llvmpipe;
/*
* XXX: we need to flush the context until we have some sort of reference
* counting in fragment shaders as they may still be binned
*/
draw_flush(llvmpipe->draw);
lp_setup_flush(llvmpipe->setup, 0);
variant = shader->variants;
while(variant) {
struct lp_fragment_shader_variant *next = variant->next;