Module: wine Branch: master Commit: ae3327334da6fdb9adcf7d27be387c089b7ffdae URL: http://source.winehq.org/git/wine.git/?a=commit;h=ae3327334da6fdb9adcf7d27be...
Author: Stefan Dösinger stefan@codeweavers.com Date: Tue Feb 13 20:25:48 2007 +0100
wined3d: Swap the SFLAG_DIBSECTION flag when swaping hdc and memory.
---
dlls/wined3d/swapchain.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c index 00f36de..52271df 100644 --- a/dlls/wined3d/swapchain.c +++ b/dlls/wined3d/swapchain.c @@ -305,9 +305,15 @@ static HRESULT WINAPI IWineD3DSwapChainImpl_Present(IWineD3DSwapChain *iface, CO /* Flip the DIBsection */ { HBITMAP tmp; + BOOL hasDib = front->Flags & SFLAG_DIBSECTION; tmp = front->dib.DIBsection; front->dib.DIBsection = back->dib.DIBsection; back->dib.DIBsection = tmp; + + if(back->Flags & SFLAG_DIBSECTION) front->Flags |= SFLAG_DIBSECTION; + else front->Flags &= ~SFLAG_DIBSECTION; + if(hasDib) back->Flags |= SFLAG_DIBSECTION; + else back->Flags &= ~SFLAG_DIBSECTION; }
/* Flip the surface data */