[PATCH 1/4] wined3d: only activate blit_shader in arbfp_blit_surface for source fixups

Roderick Colenbrander thunderbird2k at gmail.com
Tue May 18 02:30:43 CDT 2010


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

diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
index f62ff56..daadcaf 100644
--- a/dlls/wined3d/arb_program_shader.c
+++ b/dlls/wined3d/arb_program_shader.c
@@ -7016,7 +7016,9 @@ HRESULT arbfp_blit_surface(IWineD3DDeviceImpl *device, IWineD3DSurfaceImpl *src_
         dst_rect.top += dst_surface->currentDesc.Height - h; dst_rect.bottom += dst_surface->currentDesc.Height - h;
     }
 
-    arbfp_blit_set((IWineD3DDevice *)device, src_surface);
+    if (is_complex_fixup(src_surface->resource.format_desc->color_fixup) &&
+        !is_complex_fixup(dst_surface->resource.format_desc->color_fixup))
+        arbfp_blit_set((IWineD3DDevice *)device, src_surface);
 
     ENTER_GL();
 
-- 
1.6.3.3




More information about the wine-patches mailing list