wined3d: Clear SFLAG_LOCKED as soon as possible in IWineD3DSurfaceImpl_Unmap().
This commit is contained in:
parent
eb3796083a
commit
b1e03b3250
|
@ -2006,6 +2006,9 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_Unmap(IWineD3DSurface *iface)
|
||||||
return WINEDDERR_NOTLOCKED;
|
return WINEDDERR_NOTLOCKED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
This->flags &= ~SFLAG_LOCKED;
|
||||||
|
memset(&This->lockedRect, 0, sizeof(This->lockedRect));
|
||||||
|
|
||||||
if (This->flags & SFLAG_PBO)
|
if (This->flags & SFLAG_PBO)
|
||||||
{
|
{
|
||||||
const struct wined3d_gl_info *gl_info;
|
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");
|
FIXME("Depth Stencil buffer locking is not implemented\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
unlock_end:
|
unlock_end:
|
||||||
This->flags &= ~SFLAG_LOCKED;
|
|
||||||
memset(&This->lockedRect, 0, sizeof(RECT));
|
|
||||||
|
|
||||||
/* Overlays have to be redrawn manually after changes with the GL implementation */
|
/* Overlays have to be redrawn manually after changes with the GL implementation */
|
||||||
if (This->overlay_dest)
|
if (This->overlay_dest)
|
||||||
This->surface_ops->surface_draw_overlay(This);
|
This->surface_ops->surface_draw_overlay(This);
|
||||||
|
|
Loading…
Reference in New Issue