From 97a70f26f257158aad7fb426e78d9001e7121844 Mon Sep 17 00:00:00 2001 From: Paulo Sergio Travaglia Date: Fri, 2 May 2014 12:00:11 -0300 Subject: st/egl: Flush resources before presentation (android - bug 77966) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [olv: Use the real name provided by the patch author. Ideally this could be moved to somewhere higher level so that we would not need to create a pipe context to flush resources. Plus, it is not clear if flushing resources for another context is valid.] Reviewed-by: Marek Olšák Reviewed-by: Chia-I Wu --- src/gallium/state_trackers/egl/android/native_android.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/gallium') diff --git a/src/gallium/state_trackers/egl/android/native_android.cpp b/src/gallium/state_trackers/egl/android/native_android.cpp index e73d031f561..8620ed86578 100644 --- a/src/gallium/state_trackers/egl/android/native_android.cpp +++ b/src/gallium/state_trackers/egl/android/native_android.cpp @@ -396,6 +396,13 @@ android_surface_swap_buffers(struct native_surface *nsurf) struct android_surface *asurf = android_surface(nsurf); struct android_display *adpy = asurf->adpy; + struct native_display *ndpy = &adpy->base; + struct pipe_context *pipe = ndpy_get_copy_context(ndpy); + + /* flush buffer */ + pipe->flush_resource(pipe, asurf->buf_res); + pipe->flush(pipe, NULL, 0); + android_surface_enqueue_buffer(&asurf->base); asurf->stamp++; -- cgit v1.2.3