[PATCH 3/4] wined3d: Clear SFLAG_LOCKED as soon as possible in IWineD3DSurfaceImpl_Unmap().
Henri Verbeet
hverbeet at codeweavers.com
Sun Mar 6 18:30:33 CST 2011
---
dlls/wined3d/surface.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index daa484c..03d597c 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -2006,6 +2006,9 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_Unmap(IWineD3DSurface *iface)
return WINEDDERR_NOTLOCKED;
}
+ This->flags &= ~SFLAG_LOCKED;
+ memset(&This->lockedRect, 0, sizeof(This->lockedRect));
+
if (This->flags & SFLAG_PBO)
{
const struct wined3d_gl_info *gl_info;
@@ -2080,10 +2083,7 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_Unmap(IWineD3DSurface *iface)
FIXME("Depth Stencil buffer locking is not implemented\n");
}
- unlock_end:
- This->flags &= ~SFLAG_LOCKED;
- memset(&This->lockedRect, 0, sizeof(RECT));
-
+unlock_end:
/* Overlays have to be redrawn manually after changes with the GL implementation */
if (This->overlay_dest)
This->surface_ops->surface_draw_overlay(This);
--
1.7.3.4
More information about the wine-patches
mailing list