summaryrefslogtreecommitdiffstats
path: root/src/egl/drivers/dri2/platform_surfaceless.c
diff options
context:
space:
mode:
authorNicolas Boichat <drinkcat@chromium.org>2016-08-04 10:07:52 +0800
committerEmil Velikov <emil.l.velikov@gmail.com>2016-08-15 19:00:30 +0100
commit0e67d86540cb5f6bedffe4ff5dfcb1070e76b28b (patch)
tree3a76bec4dc527587658f3692942daa901ec7d2b1 /src/egl/drivers/dri2/platform_surfaceless.c
parent48fd952f28a5fcd71eed5a60c8e3a10231c7a5b0 (diff)
downloadexternal_mesa3d-0e67d86540cb5f6bedffe4ff5dfcb1070e76b28b.zip
external_mesa3d-0e67d86540cb5f6bedffe4ff5dfcb1070e76b28b.tar.gz
external_mesa3d-0e67d86540cb5f6bedffe4ff5dfcb1070e76b28b.tar.bz2
egl/surfaceless: Set disp->DriverData to NULL on error
Avoid use-after-free on error. Fixes: 9ee683f877 (egl/dri2: Add reference count for dri2_egl_display) Cc: "12.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Nicolas Boichat <drinkcat@chromium.org> Tested-by: Martin Peres <martin.peres@linux.intel.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
Diffstat (limited to 'src/egl/drivers/dri2/platform_surfaceless.c')
-rw-r--r--src/egl/drivers/dri2/platform_surfaceless.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/egl/drivers/dri2/platform_surfaceless.c b/src/egl/drivers/dri2/platform_surfaceless.c
index 8ce6162..e0d383b 100644
--- a/src/egl/drivers/dri2/platform_surfaceless.c
+++ b/src/egl/drivers/dri2/platform_surfaceless.c
@@ -362,6 +362,7 @@ cleanup_driver:
close(dri2_dpy->fd);
cleanup_display:
free(dri2_dpy);
+ disp->DriverData = NULL;
return _eglError(EGL_NOT_INITIALIZED, err);
}