[Mesa-dev] [PATCH 3/3] st/va: flush the context before calling flush_frontbuffer
Nayan Deshmukh
nayan26deshmukh at gmail.com
Wed Sep 14 05:34:24 UTC 2016
so that the texture is rendered to back buffer before calling
flush_frontbuffer and can be copied to a different buffer in
the function
Signed-off-by: Nayan Deshmukh <nayan26deshmukh at gmail.com>
---
src/gallium/state_trackers/va/surface.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/gallium/state_trackers/va/surface.c b/src/gallium/state_trackers/va/surface.c
index 3ee1cdd..05c890d 100644
--- a/src/gallium/state_trackers/va/surface.c
+++ b/src/gallium/state_trackers/va/surface.c
@@ -321,10 +321,13 @@ vlVaPutSurface(VADriverContextP ctx, VASurfaceID surface_id, void* draw, short s
return status;
}
+ // flush before calling flush_frontbuffer so that rendering is flushed
+ // to back buffer so the texture can be copied in flush_frontbuffer
+ drv->pipe->flush(drv->pipe, NULL, 0);
+
screen->flush_frontbuffer(screen, tex, 0, 0,
vscreen->get_private(vscreen), NULL);
- drv->pipe->flush(drv->pipe, NULL, 0);
pipe_resource_reference(&tex, NULL);
pipe_surface_reference(&surf_draw, NULL);
--
2.7.4
More information about the mesa-dev
mailing list