From 31bf03d8a1434b1f7d5421295b8fc216153ef0ce Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Sun, 4 Dec 2011 15:50:13 +0100 Subject: [PATCH] wined3d: Only recreate GL contexts when we're using GL for rendering in wined3d_device_reset(). --- dlls/wined3d/device.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index e96e3c4188f..515ff06b4ac 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