[PATCH] This->lockedRect is these days set in the base version of LockedRect. That function calculates This->lockedRect based on pRect. The 'original' LockedRect needs to pass This->lockedRect to AddDirtyRect. Instead of This->lockedRect we can also pass pRect as AddDirtyRect recalculates the dirty rect itself anyway based on the input rect. (The code is simila to the code which calculates This->lockedRect based on pRect).

Roderick Colenbrander thunderbird2k at gmx.net
Sat Nov 3 08:28:06 CDT 2007

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

diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 41fd41a..510d1aa 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -897,7 +897,7 @@ lock_end:
          * Dirtify on lock
          * as seen in msdn docs
-        IWineD3DSurface_AddDirtyRect(iface, &This->lockedRect);
+        IWineD3DSurface_AddDirtyRect(iface, pRect);
         /** Dirtify Container if needed */
         if (WINED3D_OK == IWineD3DSurface_GetContainer(iface, &IID_IWineD3DBaseTexture, (void **)&pBaseTexture) && pBaseTexture != NULL) {


More information about the wine-patches mailing list