[PATCH 2/4] wined3d: only set the blit_shader in BltOverride for complex source fixups
Roderick Colenbrander
thunderbird2k at gmail.com
Tue May 18 02:30:44 CDT 2010
---
dlls/wined3d/surface.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 2d7ff23..9731ed5 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -3701,7 +3701,9 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *dst_surface,
return WINED3DERR_INVALIDCALL;
}
- device->blitter->set_shader((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))
+ device->blitter->set_shader((IWineD3DDevice *)device, src_surface);
ENTER_GL();
--
1.6.3.3
More information about the wine-patches
mailing list