From: Chun-wei Fan Date: Fri, 17 Sep 2021 03:09:23 +0000 (+0800) Subject: gdkglcontext-win32-wgl.c: Fix Cairo fallback check X-Git-Tag: archive/raspbian/4.4.1+ds1-2+rpi1^2~18^2^2~96^2~1 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=75aa1a757b17eb8cef0d2cc23eca56d47e3ee45a;p=gtk4.git gdkglcontext-win32-wgl.c: Fix Cairo fallback check We were setting the WGL pixel format in GdkWin32Display too early, so the code does not bail out correctly when we retry establishing the WGL context. Fix this by pushing back setting the WGL pixel format only after it passes the shader availability check. Should fix issue #4257. --- diff --git a/gdk/win32/gdkglcontext-win32-wgl.c b/gdk/win32/gdkglcontext-win32-wgl.c index 3d05fb8907..010436bd3e 100644 --- a/gdk/win32/gdkglcontext-win32-wgl.c +++ b/gdk/win32/gdkglcontext-win32-wgl.c @@ -288,7 +288,6 @@ gdk_win32_display_init_wgl (GdkDisplay *display, return FALSE; } - display_win32->wgl_pixel_format = best_idx; display_win32->gl_version = epoxy_gl_version (); /* We must have OpenGL/WGL 2.0 or later, or have the GL_ARB_shader_objects extension */ @@ -307,6 +306,8 @@ gdk_win32_display_init_wgl (GdkDisplay *display, } } + display_win32->wgl_pixel_format = best_idx; + display_win32->hasWglARBCreateContext = epoxy_has_wgl_extension (hdc, "WGL_ARB_create_context"); display_win32->hasWglEXTSwapControl =