From c24881d39c139c451c1c096d6b0a98c8945c902b Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Wed, 24 May 2017 22:14:44 -0700 Subject: [PATCH] r100,r200: Don't assume glVisual is non-NULL during context creation Thanks to EGL_MESA_configless_context, the visual pointer can be NULL. Fixes a segfault (or assertion failure) in piglit's egl-configless-context test. Signed-off-by: Ian Romanick Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Kenneth Graunke --- src/mesa/drivers/dri/r200/r200_context.c | 1 - src/mesa/drivers/dri/radeon/radeon_common_context.c | 2 +- src/mesa/drivers/dri/radeon/radeon_context.c | 1 - 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/src/mesa/drivers/dri/r200/r200_context.c b/src/mesa/drivers/dri/r200/r200_context.c index 8f354c15b3c..aaa9b9317df 100644 --- a/src/mesa/drivers/dri/r200/r200_context.c +++ b/src/mesa/drivers/dri/r200/r200_context.c @@ -199,7 +199,6 @@ GLboolean r200CreateContext( gl_api api, return false; } - assert(glVisual); assert(driContextPriv); assert(screen); diff --git a/src/mesa/drivers/dri/radeon/radeon_common_context.c b/src/mesa/drivers/dri/radeon/radeon_common_context.c index f0c2dfa6ba3..77894353761 100644 --- a/src/mesa/drivers/dri/radeon/radeon_common_context.c +++ b/src/mesa/drivers/dri/radeon/radeon_common_context.c @@ -182,7 +182,7 @@ GLboolean radeonInitContext(radeonContextPtr radeon, radeon->texture_depth = driQueryOptioni (&radeon->optionCache, "texture_depth"); if (radeon->texture_depth == DRI_CONF_TEXTURE_DEPTH_FB) - radeon->texture_depth = ( glVisual->rgbBits > 16 ) ? + radeon->texture_depth = (glVisual == NULL || glVisual->rgbBits > 16) ? DRI_CONF_TEXTURE_DEPTH_32 : DRI_CONF_TEXTURE_DEPTH_16; radeon->texture_row_align = 32; diff --git a/src/mesa/drivers/dri/radeon/radeon_context.c b/src/mesa/drivers/dri/radeon/radeon_context.c index 5e15b46fb32..11afe20c6a0 100644 --- a/src/mesa/drivers/dri/radeon/radeon_context.c +++ b/src/mesa/drivers/dri/radeon/radeon_context.c @@ -165,7 +165,6 @@ r100CreateContext( gl_api api, return false; } - assert(glVisual); assert(driContextPriv); assert(screen); -- 2.30.2