2008/7/25 Aric Stewart <[EMAIL PROTECTED]>: > - IWineD3DSurface_LockRect(iface, &dlock, NULL, 0); > + IWineD3DSurface_LockRect(iface, &dlock, DestRect, 0); > dfmt = This->resource.format; > slock = dlock; I don't think you can simply insert DestRect there, unless it's the same as SrcRect (because of the slock = dlock line a few lines down).
> if (DestRect) > { > - xdst = *DestRect; > + xdst.top = 0; > + xdst.bottom = DestRect->bottom - DestRect->top; > + xdst.left = 0; > + xdst.right = DestRect->right - DestRect->left; > } This will break things like checking for out of surface rectangles, clipping and overlapping blits. Stefan knows this part of the code better than me, but I don't think there's anything wrong with the concept of the patch.