From: Frank Richter Date: Wed, 7 Jun 2017 07:43:43 +0000 (+0200) Subject: gallium/wgl: Allow context creation even if SetPixelFormat() wasn't called X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0ef39e588f92236f9e2fb1909a314c7eb70db8c2;p=mesa.git gallium/wgl: Allow context creation even if SetPixelFormat() wasn't called Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101326 Reviewed-by: Brian Paul --- diff --git a/src/gallium/state_trackers/wgl/stw_context.c b/src/gallium/state_trackers/wgl/stw_context.c index f3145a9e637..58fe3b0b6e6 100644 --- a/src/gallium/state_trackers/wgl/stw_context.c +++ b/src/gallium/state_trackers/wgl/stw_context.c @@ -170,7 +170,13 @@ stw_create_context_attribs(HDC hdc, INT iLayerPlane, DHGLRC hShareContext, iPixelFormat = fb->iPixelFormat; stw_framebuffer_unlock(fb); } else { - return 0; + /* Applications should call SetPixelFormat before creating a context, + * but not all do, and the opengl32 runtime seems to use a default + * pixel format in some cases, so use that. + */ + iPixelFormat = GetPixelFormat(hdc); + if (!iPixelFormat) + return 0; } pfi = stw_pixelformat_get_info( iPixelFormat );