H. Verbeet : wined3d: Container dirtification is already handled in ModifyLocation().
Alexandre Julliard
julliard at winehq.org
Wed Jul 30 08:35:57 CDT 2008
Module: wine
Branch: master
Commit: 9b47996b41c186d6417c63ad662e73a5909efe7d
URL: http://source.winehq.org/git/wine.git/?a=commit;h=9b47996b41c186d6417c63ad662e73a5909efe7d
Author: H. Verbeet <hverbeet at gmail.com>
Date: Tue Jul 29 23:14:44 2008 +0200
wined3d: Container dirtification is already handled in ModifyLocation().
---
dlls/wined3d/drawprim.c | 17 ++---------------
1 files changed, 2 insertions(+), 15 deletions(-)
diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
index 9a47f8b..fb1f705 100644
--- a/dlls/wined3d/drawprim.c
+++ b/dlls/wined3d/drawprim.c
@@ -923,7 +923,6 @@ void drawPrimitive(IWineD3DDevice *iface,
IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *)iface;
IWineD3DSwapChain *swapchain;
- IWineD3DBaseTexture *texture = NULL;
IWineD3DSurfaceImpl *target;
int i;
@@ -933,12 +932,9 @@ void drawPrimitive(IWineD3DDevice *iface,
for(i = 0; i < GL_LIMITS(buffers); i++) {
target = (IWineD3DSurfaceImpl *) This->render_targets[i];
- /* TODO: Only do all that if we're going to change anything
- * Texture container dirtification does not work quite right yet
- */
+ /* TODO: Only do all that if we're going to change anything */
if(target /*&& target->Flags & (SFLAG_INTEXTURE | SFLAG_INSYSMEM)*/) {
swapchain = NULL;
- texture = NULL;
if(i == 0) {
IWineD3DSurface_GetContainer((IWineD3DSurface *) target, &IID_IWineD3DSwapChain, (void **)&swapchain);
@@ -951,16 +947,7 @@ void drawPrimitive(IWineD3DDevice *iface,
if(swapchain) {
/* Onscreen target. Invalidate system memory copy and texture copy */
IWineD3DSwapChain_Release(swapchain);
- } else if(wined3d_settings.offscreen_rendering_mode != ORM_FBO) {
- /* Non-FBO target: Invalidate system copy, texture copy and dirtify the container */
- /* TODO: Move container dirtification to ModifyLocation */
- IWineD3DSurface_GetContainer((IWineD3DSurface *) target, &IID_IWineD3DBaseTexture, (void **)&texture);
-
- if(texture) {
- IWineD3DBaseTexture_SetDirty(texture, TRUE);
- IWineD3DTexture_Release(texture);
- }
- } else {
+ } else if(wined3d_settings.offscreen_rendering_mode == ORM_FBO) {
/* FBO offscreen target. Texture == Drawable */
target->Flags |= SFLAG_INTEXTURE;
}
More information about the wine-cvs
mailing list