Henri Verbeet : wined3d: Flush after accessing the front buffer in surface_blt_fbo().

Alexandre Julliard julliard at winehq.org
Tue Apr 12 11:07:34 CDT 2011


Module: wine
Branch: master
Commit: 55e957a31a8fea55a27285483202723db06407bc
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=55e957a31a8fea55a27285483202723db06407bc

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Mon Apr 11 20:55:14 2011 +0200

wined3d: Flush after accessing the front buffer in surface_blt_fbo().

---

 dlls/wined3d/surface.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index c2d92ed..102ddc9 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -3456,7 +3456,10 @@ static void surface_blt_fbo(IWineD3DDeviceImpl *device, const WINED3DTEXTUREFILT
 
     LEAVE_GL();
 
-    if (wined3d_settings.strict_draw_ordering) wglFlush(); /* Flush to ensure ordering across contexts. */
+    if (wined3d_settings.strict_draw_ordering
+            || (dst_location == SFLAG_INDRAWABLE
+            && dst_surface->container.u.swapchain->front_buffer == dst_surface))
+        wglFlush();
 
     context_release(context);
 }




More information about the wine-cvs mailing list