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