[1/10] WineD3D: Dirtify the render targets,
not the primary swapchain on draws
Stefan Dösinger
stefan at codeweavers.com
Tue Feb 13 13:21:32 CST 2007
-------------- next part --------------
From 996cf81fb786e5ea03232bdc0702634e6f902103 Mon Sep 17 00:00:00 2001
From: Stefan Doesinger <stefan at codeweavers.com>
Date: Sat, 27 Jan 2007 12:59:26 +0100
Subject: [PATCH] WineD3D: Dirtify the render targets, not the primary swapchain on draws
---
dlls/wined3d/drawprim.c | 9 +++------
1 files changed, 3 insertions(+), 6 deletions(-)
diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
index dcf6d26..63c89ef 100644
--- a/dlls/wined3d/drawprim.c
+++ b/dlls/wined3d/drawprim.c
@@ -1177,18 +1177,15 @@ void drawPrimitive(IWineD3DDevice *iface,
int minIndex) {
IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *)iface;
- IWineD3DSwapChainImpl *swapchain;
int i;
/* Signals other modules that a drawing is in progress and the stateblock finalized */
This->isInDraw = TRUE;
/* Invalidate the back buffer memory so LockRect will read it the next time */
- for(i = 0; i < IWineD3DDevice_GetNumberOfSwapChains(iface); i++) {
- IWineD3DDevice_GetSwapChain(iface, i, (IWineD3DSwapChain **) &swapchain);
- if(swapchain) {
- if(swapchain->backBuffer) ((IWineD3DSurfaceImpl *) swapchain->backBuffer[0])->Flags |= SFLAG_GLDIRTY;
- IWineD3DSwapChain_Release( (IWineD3DSwapChain *) swapchain);
+ for(i = 0; i < GL_LIMITS(buffers); i++) {
+ if(This->render_targets[i]) {
+ ((IWineD3DSurfaceImpl *) This->render_targets[i])->Flags |= SFLAG_GLDIRTY;
}
}
--
1.4.4.3
More information about the wine-patches
mailing list