Henri Verbeet : wined3d: Clear SFLAG_LOCKED as soon as possible in IWineD3DSurfaceImpl_Unmap().
Module: wine Branch: master Commit: b1e03b3250c62b3321cef57e381c4d273e42f2fb URL: http://source.winehq.org/git/wine.git/?a=commit;h=b1e03b3250c62b3321cef57e38... Author: Henri Verbeet <hverbeet(a)codeweavers.com> Date: Mon Mar 7 01:30:33 2011 +0100 wined3d: Clear SFLAG_LOCKED as soon as possible in IWineD3DSurfaceImpl_Unmap(). --- 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);
participants (1)
-
Alexandre Julliard