From: Zhiyi Zhang <zzhang@codeweavers.com> When internal_format_set is set, wined3d_context_gl_set_pixel_format () using the backup DC may fail in wined3d_context_gl_set_gl_context(). This avoids a possible NULL pointer reference in wined3d_context_gl_copy_bo_address() when a thread is being terminated because the buffer object was not created due to wrong format. --- dlls/wined3d/context_gl.c | 1 + 1 file changed, 1 insertion(+) diff --git a/dlls/wined3d/context_gl.c b/dlls/wined3d/context_gl.c index fc480f5a440..730c6db94aa 100644 --- a/dlls/wined3d/context_gl.c +++ b/dlls/wined3d/context_gl.c @@ -1256,6 +1256,7 @@ static BOOL wined3d_context_gl_set_gl_context(struct wined3d_context_gl *context TRACE("Using backup DC %p.\n", context_gl->dc); context_gl->dc_is_private = TRUE; context_gl->dc_has_format = FALSE; + context_gl->internal_format_set = FALSE; if (!wined3d_context_gl_set_pixel_format(context_gl)) { -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/9956