trace: Prevent tracing internal pipe driver calls.

This commit is contained in:
José Fonseca 2008-08-09 11:53:56 +01:00
parent dc31bb5076
commit 376f2cbb19
2 changed files with 7 additions and 5 deletions

View File

@ -30,6 +30,7 @@
#include "tr_stream.h"
#include "tr_dump.h"
#include "tr_state.h"
#include "tr_winsys.h"
#include "tr_screen.h"
#include "tr_context.h"
@ -999,14 +1000,11 @@ trace_context_destroy(struct pipe_context *_pipe)
struct pipe_context *
trace_context_create(struct pipe_context *pipe)
{
struct trace_screen *tr_scr;
struct trace_context *tr_ctx;
if(!debug_get_bool_option("GALLIUM_TRACE", FALSE))
return pipe;
tr_scr = trace_screen(pipe->screen);
tr_ctx = CALLOC_STRUCT(trace_context);
if(!tr_ctx)
return NULL;
@ -1058,8 +1056,9 @@ trace_context_create(struct pipe_context *pipe)
tr_ctx->pipe = pipe;
/* We don't want to trace the pipe calls */
pipe->screen = tr_scr->screen;
/* We don't want to trace the internal pipe calls */
pipe->winsys = trace_winsys(pipe->winsys)->winsys;
pipe->screen = trace_screen(pipe->screen)->screen;
return &tr_ctx->base;
}

View File

@ -376,5 +376,8 @@ trace_screen_create(struct pipe_screen *screen)
if(!tr_scr->stream)
return NULL;
/* We don't want to trace the internal pipe calls */
screen->winsys = trace_winsys(screen->winsys)->winsys;
return &tr_scr->base;
}