Henri Verbeet : wined3d: Only recreate GL contexts when we' re using GL for rendering in wined3d_device_reset().

Alexandre Julliard julliard at winehq.org
Mon Dec 5 14:55:00 CST 2011


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

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Sun Dec  4 15:50:13 2011 +0100

wined3d: Only recreate GL contexts when we're using GL for rendering in wined3d_device_reset().

---

 dlls/wined3d/device.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index e96e3c4..515ff06 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -5604,7 +5604,8 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device,
         }
     }
 
-    delete_opengl_contexts(device, swapchain);
+    if (device->d3d_initialized)
+        delete_opengl_contexts(device, swapchain);
 
     if (!swapchain_desc->windowed != !swapchain->desc.windowed
             || DisplayModeChanged)
@@ -5678,7 +5679,8 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device,
     swapchain_update_render_to_fbo(swapchain);
     swapchain_update_draw_bindings(swapchain);
 
-    hr = create_primary_opengl_context(device, swapchain);
+    if (device->d3d_initialized)
+        hr = create_primary_opengl_context(device, swapchain);
     wined3d_swapchain_decref(swapchain);
 
     /* All done. There is no need to reload resources or shaders, this will happen automatically on the




More information about the wine-cvs mailing list