diff options
author | Marek Olšák <[email protected]> | 2014-08-17 01:32:43 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2014-08-19 12:20:17 +0200 |
commit | 4a3f156dd1eda367407464d0123bd18bc140f655 (patch) | |
tree | 3965a6d0a68cf1afd7eb9858cad79f0cff14d7f6 /src | |
parent | f921131a5cebc233749a86cdd44b409c0cecc4ef (diff) |
rbug: remove contexts from the list properly
Reviewed-by: Roland Scheidegger <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/drivers/rbug/rbug_context.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gallium/drivers/rbug/rbug_context.c b/src/gallium/drivers/rbug/rbug_context.c index 62fe543b761..ca945902a33 100644 --- a/src/gallium/drivers/rbug/rbug_context.c +++ b/src/gallium/drivers/rbug/rbug_context.c @@ -40,10 +40,12 @@ static void rbug_destroy(struct pipe_context *_pipe) { + struct rbug_screen *rb_screen = rbug_screen(_pipe->screen); struct rbug_context *rb_pipe = rbug_context(_pipe); struct pipe_context *pipe = rb_pipe->pipe; - remove_from_list(&rb_pipe->list); + rbug_screen_remove_from_list(rb_screen, contexts, rb_pipe); + pipe_mutex_lock(rb_pipe->call_mutex); pipe->destroy(pipe); rb_pipe->pipe = NULL; |