Changeset 23571 in vbox for trunk/src/VBox/Additions/WINNT/Graphics/Wine/wined3d/swapchain.c
- Timestamp:
- Oct 6, 2009 6:07:06 AM (15 years ago)
- svn:sync-xref-src-repo-rev:
- 53228
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Wine/wined3d/swapchain.c
r22496 r23571 46 46 47 47 /*IWineD3DSwapChain parts follow: */ 48 static void WINAPI IWineD3DSwapChainImpl_Destroy(IWineD3DSwapChain *iface, D3DCB_DESTROYSURFACEFN D3DCB_DestroyRenderTarget) { 48 static void WINAPI IWineD3DSwapChainImpl_Destroy(IWineD3DSwapChain *iface) 49 { 49 50 IWineD3DSwapChainImpl *This = (IWineD3DSwapChainImpl *)iface; 50 51 WINED3DDISPLAYMODE mode; … … 55 56 IWineD3DSwapChain_SetGammaRamp(iface, 0, &This->orig_gamma); 56 57 57 /* release the ref to the front and back buffer parents */ 58 if(This->frontBuffer) { 58 /* Release the swapchain's draw buffers. Make sure This->backBuffer[0] is 59 * the last buffer to be destroyed, FindContext() depends on that. */ 60 if (This->frontBuffer) 61 { 59 62 IWineD3DSurface_SetContainer(This->frontBuffer, 0); 60 if(D3DCB_DestroyRenderTarget(This->frontBuffer) > 0) { 61 FIXME("(%p) Something's still holding the front buffer\n",This); 62 } 63 } 64 65 if(This->backBuffer) { 66 UINT i; 67 for(i = 0; i < This->presentParms.BackBufferCount; i++) { 63 if (IWineD3DSurface_Release(This->frontBuffer)) 64 { 65 WARN("(%p) Something's still holding the front buffer (%p).\n", 66 This, This->frontBuffer); 67 } 68 This->frontBuffer = NULL; 69 } 70 71 if (This->backBuffer) 72 { 73 UINT i = This->presentParms.BackBufferCount; 74 75 while (i--) 76 { 68 77 IWineD3DSurface_SetContainer(This->backBuffer[i], 0); 69 if (D3DCB_DestroyRenderTarget(This->backBuffer[i]) > 0) {70 FIXME("(%p) Something's still holding the back buffer\n",This);71 }78 if (IWineD3DSurface_Release(This->backBuffer[i])) 79 WARN("(%p) Something's still holding back buffer %u (%p).\n", 80 This, i, This->backBuffer[i]); 72 81 } 73 82 HeapFree(GetProcessHeap(), 0, This->backBuffer); 83 This->backBuffer = NULL; 74 84 } 75 85 … … 120 130 cursor.resource.wineD3DDevice = This->wineD3DDevice; 121 131 cursor.resource.pool = WINED3DPOOL_SCRATCH; 122 cursor.resource.format_desc = getFormatDescEntry(WINED3DFMT_A8R8G8B8, &This->wineD3DDevice->adapter->gl_info); 132 cursor.resource.format_desc = 133 getFormatDescEntry(WINED3DFMT_B8G8R8A8_UNORM, &This->wineD3DDevice->adapter->gl_info); 123 134 cursor.resource.resourceType = WINED3DRTYPE_SURFACE; 124 135 cursor.texture_name = This->wineD3DDevice->cursorTexture;
Note:
See TracChangeset
for help on using the changeset viewer.