Commit 9b47996b authored by H. Verbeet's avatar H. Verbeet Committed by Alexandre Julliard

wined3d: Container dirtification is already handled in ModifyLocation().

parent 164e732b
...@@ -923,7 +923,6 @@ void drawPrimitive(IWineD3DDevice *iface, ...@@ -923,7 +923,6 @@ void drawPrimitive(IWineD3DDevice *iface,
IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *)iface; IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *)iface;
IWineD3DSwapChain *swapchain; IWineD3DSwapChain *swapchain;
IWineD3DBaseTexture *texture = NULL;
IWineD3DSurfaceImpl *target; IWineD3DSurfaceImpl *target;
int i; int i;
...@@ -933,12 +932,9 @@ void drawPrimitive(IWineD3DDevice *iface, ...@@ -933,12 +932,9 @@ void drawPrimitive(IWineD3DDevice *iface,
for(i = 0; i < GL_LIMITS(buffers); i++) { for(i = 0; i < GL_LIMITS(buffers); i++) {
target = (IWineD3DSurfaceImpl *) This->render_targets[i]; target = (IWineD3DSurfaceImpl *) This->render_targets[i];
/* TODO: Only do all that if we're going to change anything /* TODO: Only do all that if we're going to change anything */
* Texture container dirtification does not work quite right yet
*/
if(target /*&& target->Flags & (SFLAG_INTEXTURE | SFLAG_INSYSMEM)*/) { if(target /*&& target->Flags & (SFLAG_INTEXTURE | SFLAG_INSYSMEM)*/) {
swapchain = NULL; swapchain = NULL;
texture = NULL;
if(i == 0) { if(i == 0) {
IWineD3DSurface_GetContainer((IWineD3DSurface *) target, &IID_IWineD3DSwapChain, (void **)&swapchain); IWineD3DSurface_GetContainer((IWineD3DSurface *) target, &IID_IWineD3DSwapChain, (void **)&swapchain);
...@@ -951,16 +947,7 @@ void drawPrimitive(IWineD3DDevice *iface, ...@@ -951,16 +947,7 @@ void drawPrimitive(IWineD3DDevice *iface,
if(swapchain) { if(swapchain) {
/* Onscreen target. Invalidate system memory copy and texture copy */ /* Onscreen target. Invalidate system memory copy and texture copy */
IWineD3DSwapChain_Release(swapchain); IWineD3DSwapChain_Release(swapchain);
} else if(wined3d_settings.offscreen_rendering_mode != ORM_FBO) { } 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 {
/* FBO offscreen target. Texture == Drawable */ /* FBO offscreen target. Texture == Drawable */
target->Flags |= SFLAG_INTEXTURE; target->Flags |= SFLAG_INTEXTURE;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment