Stefan Dösinger : wined3d: Implement blits from the active render target to swapchains.

Alexandre Julliard julliard at winehq.org
Wed Dec 19 06:58:23 CST 2007


Module: wine
Branch: master
Commit: 7e9af243d197f608a814a5ea0b00c6862be2bc41
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=7e9af243d197f608a814a5ea0b00c6862be2bc41

Author: Stefan Dösinger <stefan at codeweavers.com>
Date:   Tue Dec 18 13:55:47 2007 +0100

wined3d: Implement blits from the active render target to swapchains.

---

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

diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 7971908..76b8a1d 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -2977,8 +2977,8 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
         if(SrcSurface != myDevice->render_targets[0]) {
             ERR("Unexpected render target -> render target blit\n");
         }
-        FIXME("Implement blit from active render target to a swapchain\n");
-        return WINED3DERR_INVALIDCALL;
+        TRACE("Blit from active render target to a swapchain\n");
+        /* Handled with regular texture -> swapchain blit */
     } else if(srcSwapchain) {
         if(This != (IWineD3DSurfaceImpl *) myDevice->render_targets[0]) {
             ERR("Unexpected render target -> render target blit\n");
@@ -2987,7 +2987,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
         return WINED3DERR_INVALIDCALL;
     }
 
-    if(srcSwapchain || SrcSurface == myDevice->render_targets[0]) {
+    if((srcSwapchain || SrcSurface == myDevice->render_targets[0]) && !dstSwapchain) {
         /* Blit from render target to texture */
         WINED3DRECT srect;
         BOOL upsideDown, stretchx;




More information about the wine-cvs mailing list