Changeset 39869 in vbox for trunk/src/VBox/Additions/WINNT
- Timestamp:
- Jan 25, 2012 7:02:14 AM (13 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics/Wine/wined3d
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Wine/wined3d/context.c
r39602 r39869 1082 1082 { 1083 1083 struct wined3d_context *ctx = vboxGetCurrentContext(); 1084 if (ctx && !VBoxTlsRefIsFunctional(ctx)) 1085 { 1086 /* this is a destroyed context left in the tls of the current thread */ 1087 /* 1. this releases the context and clears the tls */ 1088 vboxSetCurrentContext(NULL); 1089 /* return there is no context current */ 1090 return NULL; 1091 } 1084 1092 if (!adjustTid) 1085 1093 return ctx; … … 1505 1513 { 1506 1514 struct wined3d_context * context = (struct wined3d_context *)pvCtx; 1507 context_destroy_gl_resources(context);1508 1515 HeapFree(GetProcessHeap(), 0, context); 1509 1516 } … … 1993 2000 destroy = FALSE; 1994 2001 } 2002 #else 2003 context_destroy_gl_resources(context); 1995 2004 #endif 1996 2005 … … 1998 2007 HeapFree(GetProcessHeap(), 0, context->pshader_const_dirty); 1999 2008 device_context_remove(This, context); 2000 #ifndef VBOX_WITH_WDDM2001 context->swapchain = NULL;2002 #endif2003 2009 #if !defined(VBOX_WINE_WITH_SINGLE_CONTEXT) && !defined(VBOX_WINE_WITH_SINGLE_SWAPCHAIN_CONTEXT) 2004 2010 if (destroy) HeapFree(GetProcessHeap(), 0, context); 2005 2011 #else 2012 # ifndef VBOX_WITH_WDDM 2013 context->swapchain = NULL; 2014 #else 2015 context->currentSwapchain = NULL; 2016 context->device = NULL; 2017 # endif 2018 VBoxTlsRefMarkDestroy(context); 2006 2019 VBoxTlsRefRelease(context); 2007 2020 #endif -
trunk/src/VBox/Additions/WINNT/Graphics/Wine/wined3d/swapchain.c
r39602 r39869 139 139 This->backBuffer = NULL; 140 140 } 141 #if 0141 #ifndef VBOX_WINE_WITH_SINGLE_CONTEXT 142 142 for (i = 0; i < This->num_contexts; ++i) 143 143 { 144 144 context_destroy(This->device, This->context[i]); 145 145 } 146 #e lse146 #endif 147 147 148 148 #ifdef VBOX_WITH_WDDM … … 158 158 IWineD3DDevice_RemoveSwapChain((IWineD3DDevice*)This->device, (IWineD3DSwapChain*)This); 159 159 if (!This->device->NumberOfSwapChains) 160 #endif161 160 { 162 161 /* Restore the screen resolution if we rendered in fullscreen
Note:
See TracChangeset
for help on using the changeset viewer.