summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gallium/drivers/trace/tr_context.c2
-rw-r--r--src/gallium/drivers/trace/tr_texture.c4
-rw-r--r--src/gallium/drivers/trace/tr_texture.h5
3 files changed, 7 insertions, 4 deletions
diff --git a/src/gallium/drivers/trace/tr_context.c b/src/gallium/drivers/trace/tr_context.c
index 9668aace6e1..b88f37999e9 100644
--- a/src/gallium/drivers/trace/tr_context.c
+++ b/src/gallium/drivers/trace/tr_context.c
@@ -897,7 +897,7 @@ trace_context_create_surface(struct pipe_context *_pipe,
trace_dump_call_end();
- result = trace_surf_create(tr_res, result);
+ result = trace_surf_create(tr_ctx, tr_res, result);
return result;
}
diff --git a/src/gallium/drivers/trace/tr_texture.c b/src/gallium/drivers/trace/tr_texture.c
index 81ebc9ee770..aae13383865 100644
--- a/src/gallium/drivers/trace/tr_texture.c
+++ b/src/gallium/drivers/trace/tr_texture.c
@@ -74,7 +74,8 @@ trace_resource_destroy(struct trace_screen *tr_scr,
struct pipe_surface *
-trace_surf_create(struct trace_resource *tr_res,
+trace_surf_create(struct trace_context *tr_ctx,
+ struct trace_resource *tr_res,
struct pipe_surface *surface)
{
struct trace_surface *tr_surf;
@@ -89,6 +90,7 @@ trace_surf_create(struct trace_resource *tr_res,
goto error;
memcpy(&tr_surf->base, surface, sizeof(struct pipe_surface));
+ tr_surf->base.context = &tr_ctx->base;
pipe_reference_init(&tr_surf->base.reference, 1);
tr_surf->base.texture = NULL;
diff --git a/src/gallium/drivers/trace/tr_texture.h b/src/gallium/drivers/trace/tr_texture.h
index 596978a1ffd..2b4732b4f3a 100644
--- a/src/gallium/drivers/trace/tr_texture.h
+++ b/src/gallium/drivers/trace/tr_texture.h
@@ -133,8 +133,9 @@ trace_resource_destroy(struct trace_screen *tr_scr,
struct trace_resource *tr_res);
struct pipe_surface *
-trace_surf_create(struct trace_resource *tr_res,
- struct pipe_surface *surface);
+trace_surf_create(struct trace_context *tr_ctx,
+ struct trace_resource *tr_res,
+ struct pipe_surface *surface);
void
trace_surf_destroy(struct trace_surface *tr_surf);