WineD3D: Do not setup states for unlocking if unlocking is disabled

Stefan Dösinger stefandoesinger at gmx.at
Thu Dec 28 11:30:12 CST 2006


From 9b4d053f90bed7d3dd9f9d5abbfe947c02a279f8 Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Stefan_D=C3=B6singer?= <stefan at imac.local>
Date: Sat, 23 Dec 2006 12:29:55 +0100
Subject: [PATCH] WineD3D: Do not setup for blitting if blitting is disabled

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

diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index c030f36..b3799da 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -1141,7 +1141,7 @@ static HRESULT WINAPI IWineD3DSurfaceImp
         IWineD3DSwapChainImpl *implSwapChain;
         IWineD3DDevice_GetSwapChain((IWineD3DDevice *)myDevice, 0, (IWineD3DSwapChain **)&implSwapChain);
 
-        if (backbuf || iface ==  implSwapChain->frontBuffer || iface == myDevice->render_targets[0]) {
+        if ((backbuf || iface ==  implSwapChain->frontBuffer || iface == myDevice->render_targets[0]) && wined3d_settings.rendertargetlock_mode != RTL_DISABLE) {
             int tex;
 
             ENTER_GL();
@@ -1221,7 +1221,7 @@ static HRESULT WINAPI IWineD3DSurfaceImp
             /** restore clean dirty state */
             IWineD3DSurface_CleanDirtyRect(iface);
 
-        } else {
+        } else if(wined3d_settings.rendertargetlock_mode != RTL_DISABLE) {
             FIXME("unsupported unlocking to Rendering surface surf@%p usage(%s)\n", This, debug_d3dusage(This->resource.usage));
         }
         IWineD3DSwapChain_Release((IWineD3DSwapChain *)implSwapChain);
-- 
1.4.2.4



More information about the wine-patches mailing list