From: Eric Anholt Date: Mon, 29 Jul 2019 23:25:56 +0000 (-0700) Subject: surfaceless: Fix swrast-path segfault when loader doesn't know driver name. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=86ae3c218662a302a96003010f331ac3d3153147;p=mesa.git surfaceless: Fix swrast-path segfault when loader doesn't know driver name. If we're hitting the swrast fallback path here, it's probably because we stumbled across a KMS-only device (such as the ASpeed that some of our CI runners have) that will then return a NULL driver_name. Don't crash in that case. Reviewed-by: Eric Engestrom --- diff --git a/src/egl/drivers/dri2/platform_surfaceless.c b/src/egl/drivers/dri2/platform_surfaceless.c index 210f8188b96..8eeb2d4ed43 100644 --- a/src/egl/drivers/dri2/platform_surfaceless.c +++ b/src/egl/drivers/dri2/platform_surfaceless.c @@ -294,8 +294,9 @@ surfaceless_probe_device(_EGLDisplay *disp, bool swrast) * are unavailable since 6c5ab, and kms_swrast is more * feature complete than swrast. */ - if (strcmp(driver_name, "vgem") == 0 || - strcmp(driver_name, "virtio_gpu") == 0) + if (driver_name && + (strcmp(driver_name, "vgem") == 0 || + strcmp(driver_name, "virtio_gpu") == 0)) dri2_dpy->driver_name = strdup("kms_swrast"); free(driver_name); } else {