Changelog : dlls/ddraw/d3ddevice/main.c Implement SwapTextureHandles method. Christian Costa titan.costa@wanadoo.fr
Index: main.c =================================================================== RCS file: /home/wine/wine/dlls/ddraw/d3ddevice/main.c,v retrieving revision 1.10 diff -u -r1.10 main.c --- main.c 31 May 2002 23:25:45 -0000 1.10 +++ main.c 29 Sep 2002 19:37:25 -0000 @@ -81,10 +81,15 @@ HRESULT WINAPI IDirect3DDevice2Impl_SwapTextureHandles( - LPDIRECT3DDEVICE2 iface,LPDIRECT3DTEXTURE2 lptex1,LPDIRECT3DTEXTURE2 lptex2 + LPDIRECT3DDEVICE2 iface,LPDIRECT3DTEXTURE2 lpD3DTex1,LPDIRECT3DTEXTURE2 lpD3DTex2 ) { ICOM_THIS(IDirect3DDevice2Impl,iface); - FIXME("(%p)->(%p,%p): stub\n", This, lptex1, lptex2); + IDirect3DTexture2Impl tmp; + TRACE("(%p)->(%p,%p)\n", This, lpD3DTex1, lpD3DTex2); + + tmp = *(IDirect3DTexture2Impl*)lpD3DTex1; + *(IDirect3DTexture2Impl*)lpD3DTex1 = *(IDirect3DTexture2Impl*)lpD3DTex2; + *(IDirect3DTexture2Impl*)lpD3DTex2 = tmp; return DD_OK; } @@ -471,7 +476,12 @@ LPDIRECT3DTEXTURE lpD3DTex2 ) { ICOM_THIS(IDirect3DDeviceImpl,iface); - TRACE("(%p)->(%p,%p): stub\n", This, lpD3DTex1, lpD3DTex2); + IDirect3DTexture2Impl tmp; + TRACE("(%p)->(%p,%p)\n", This, lpD3DTex1, lpD3DTex2); + + tmp = *(IDirect3DTexture2Impl*)lpD3DTex1; + *(IDirect3DTexture2Impl*)lpD3DTex1 = *(IDirect3DTexture2Impl*)lpD3DTex2; + *(IDirect3DTexture2Impl*)lpD3DTex2 = tmp; return DD_OK; }