intel: When AUB dumping, flush before emitting final bitmap command.
authorPaul Berry <stereotype441@gmail.com>
Sun, 6 May 2012 17:01:37 +0000 (10:01 -0700)
committerPaul Berry <stereotype441@gmail.com>
Tue, 22 May 2012 22:19:00 +0000 (15:19 -0700)
When we are generating an AUB dump, we make a final call to
aub_dump_bmp() as the context is being destroyed, to ensure that any
rendering performed before the application exits can be seen during a
simulation run.  However, we were doing this before flushing the batch
buffer; as a result simulation runs would not always see the effect of
all rendering commands.

This patch flushes the batch buffer just before making the final call
to aub_dump_bmp(), to ensure that all rendering is properly captured
in the final bitmap.

src/mesa/drivers/dri/intel/intel_context.c

index f572f3828821c114214114ec4af40a9df9a024f6..b770aa250d371ef0bdc8d2d96238c2294be8e015 100644 (file)
@@ -794,8 +794,10 @@ intelDestroyContext(__DRIcontext * driContextPriv)
       INTEL_FIREVERTICES(intel);
 
       /* Dump a final BMP in case the application doesn't call SwapBuffers */
-      if (INTEL_DEBUG & DEBUG_AUB)
+      if (INTEL_DEBUG & DEBUG_AUB) {
+         intel_batchbuffer_flush(intel);
         aub_dump_bmp(&intel->ctx);
+      }
 
       _mesa_meta_free(&intel->ctx);