diff options
author | Jakob Bornecrantz <[email protected]> | 2009-04-17 15:55:51 +0200 |
---|---|---|
committer | Jakob Bornecrantz <[email protected]> | 2009-04-17 16:03:01 +0200 |
commit | 44d0e0caf4ad3b01dc08d8432867c449dc3f2a23 (patch) | |
tree | a0d8ad22f727c44c3cca74d9cbcd48f949d30891 /src/gallium/drivers/trace/tr_context.c | |
parent | 1e42f68fd612b2a4c877b91393e5ff5bc34dbe0d (diff) |
trace: Keep screen objects on lists
Diffstat (limited to 'src/gallium/drivers/trace/tr_context.c')
-rw-r--r-- | src/gallium/drivers/trace/tr_context.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/gallium/drivers/trace/tr_context.c b/src/gallium/drivers/trace/tr_context.c index 696b6a4f59b..38646f8aad3 100644 --- a/src/gallium/drivers/trace/tr_context.c +++ b/src/gallium/drivers/trace/tr_context.c @@ -26,6 +26,8 @@ **************************************************************************/ #include "util/u_memory.h" +#include "util/u_simple_list.h" + #include "pipe/p_screen.h" #include "tr_dump.h" @@ -1014,16 +1016,17 @@ trace_context_flush(struct pipe_context *_pipe, static INLINE void trace_context_destroy(struct pipe_context *_pipe) { + struct trace_screen *tr_scr = trace_screen(_pipe->screen); struct trace_context *tr_ctx = trace_context(_pipe); struct pipe_context *pipe = tr_ctx->pipe; trace_dump_call_begin("pipe_context", "destroy"); - trace_dump_arg(ptr, pipe); + trace_dump_call_end(); - pipe->destroy(pipe); + trace_screen_remove_from_list(tr_scr, contexts, tr_ctx); - trace_dump_call_end(); + pipe->destroy(pipe); FREE(tr_ctx); } @@ -1150,6 +1153,8 @@ trace_context_create(struct pipe_screen *_screen, trace_dump_ret(ptr, pipe); trace_dump_call_end(); + trace_screen_add_to_list(tr_scr, contexts, tr_ctx); + return &tr_ctx->base; error1: |