[PATCH 2/6] wined3d: Revert 4ba16b84a9e60ffcc98fc4b4c303c975589b59e2.

Henri Verbeet hverbeet at codeweavers.com
Sun Sep 20 13:09:23 CDT 2009


Unfortunately surface_can_stretch_rect() doesn't check just for
WINED3DFMT_FLAG_FBO_ATTACHABLE.
---
 dlls/wined3d/surface.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index fffa28f..6a5e66d 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -3581,7 +3581,8 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, const
          * FBO support, so it doesn't really make sense to try and make it work with different offscreen rendering
          * backends.
          */
-        if (GL_SUPPORT(EXT_FRAMEBUFFER_BLIT) && surface_can_stretch_rect(Src, This))
+        if (wined3d_settings.offscreen_rendering_mode == ORM_FBO && GL_SUPPORT(EXT_FRAMEBUFFER_BLIT)
+                && surface_can_stretch_rect(Src, This))
         {
             stretch_rect_fbo((IWineD3DDevice *)myDevice, SrcSurface, &srect,
                     (IWineD3DSurface *)This, &rect, Filter, upsideDown);
@@ -3644,8 +3645,9 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, const
             Src->palette = This->palette;
         }
 
-        if (GL_SUPPORT(EXT_FRAMEBUFFER_BLIT) && surface_can_stretch_rect(Src, This)
-                && !(Flags & (WINEDDBLT_KEYSRC | WINEDDBLT_KEYSRCOVERRIDE)))
+        if (wined3d_settings.offscreen_rendering_mode == ORM_FBO && GL_SUPPORT(EXT_FRAMEBUFFER_BLIT)
+                && !(Flags & (WINEDDBLT_KEYSRC | WINEDDBLT_KEYSRCOVERRIDE))
+                && surface_can_stretch_rect(Src, This))
         {
             TRACE("Using stretch_rect_fbo\n");
             /* The source is always a texture, but never the currently active render target, and the texture
-- 
1.6.0.6




More information about the wine-patches mailing list