From: Elizabeth Figura <zfigura@codeweavers.com> If we were using a backup DC and then perform a reset, we will clear the DC, but not zero it, meaning that once 3D is initialized again, we may eventually end up trying to use the same backup DC which has been deleted. Fix this by also zeroing the DC pointer. --- dlls/wined3d/device.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index efa1632ec35..45f480d693c 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -1487,6 +1487,8 @@ void wined3d_device_gl_delete_opengl_contexts_cs(void *object) wined3d_release_dc(device_gl->backup_wnd, device_gl->backup_dc); DestroyWindow(device_gl->backup_wnd); + device_gl->backup_dc = NULL; + device_gl->backup_wnd = NULL; } } -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10024