summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/ddebug/dd_context.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/ddebug/dd_context.c')
-rw-r--r--src/gallium/drivers/ddebug/dd_context.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/gallium/drivers/ddebug/dd_context.c b/src/gallium/drivers/ddebug/dd_context.c
index fc44a4bd1b..2abbff933f 100644
--- a/src/gallium/drivers/ddebug/dd_context.c
+++ b/src/gallium/drivers/ddebug/dd_context.c
@@ -584,8 +584,19 @@ dd_context_destroy(struct pipe_context *_pipe)
pipe_resource_reference(&dctx->fence, NULL);
}
- if (pipe->set_log_context)
+ if (pipe->set_log_context) {
pipe->set_log_context(pipe, NULL);
+
+ if (dd_screen(dctx->base.screen)->mode == DD_DUMP_ALL_CALLS) {
+ FILE *f = dd_get_file_stream(dd_screen(dctx->base.screen), 0);
+ if (f) {
+ fprintf(f, "Remainder of driver log:\n\n");
+ }
+
+ u_log_new_page_print(&dctx->log, f);
+ fclose(f);
+ }
+ }
u_log_context_destroy(&dctx->log);
pipe->destroy(pipe);