Stefan Dösinger : ddraw: Catch No-op SetRenderTarget operations.

Alexandre Julliard julliard at winehq.org
Mon Mar 3 14:03:33 CST 2008


Module: wine
Branch: master
Commit: 069b9c8c1c639252a587590bfb78aebd59b6ea5a
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=069b9c8c1c639252a587590bfb78aebd59b6ea5a

Author: Stefan Dösinger <stefan at codeweavers.com>
Date:   Thu Feb 28 19:10:19 2008 +0100

ddraw: Catch No-op SetRenderTarget operations.

---

 dlls/ddraw/device.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c
index b60b6f3..eed378b 100644
--- a/dlls/ddraw/device.c
+++ b/dlls/ddraw/device.c
@@ -1862,6 +1862,13 @@ IDirect3DDeviceImpl_7_SetRenderTarget(IDirect3DDevice7 *iface,
     EnterCriticalSection(&ddraw_cs);
     /* Flags: Not used */
 
+    if(This->target == Target)
+    {
+        TRACE("No-op SetRenderTarget operation, not doing anything\n");
+        LeaveCriticalSection(&ddraw_cs);
+        return D3D_OK;
+    }
+
     hr = IWineD3DDevice_SetRenderTarget(This->wineD3DDevice,
                                         0,
                                         Target ? Target->WineD3DSurface : NULL);




More information about the wine-cvs mailing list