Mesa (12.0): egl/wayland: use the destroy_window_callback for swrast
Emil Velikov
evelikov at kemper.freedesktop.org
Tue Jan 24 01:38:46 UTC 2017
Module: Mesa
Branch: 12.0
Commit: 689ca381b5f7ee799ded0431416cd4dd666e873a
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=689ca381b5f7ee799ded0431416cd4dd666e873a
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Mon Nov 28 18:25:18 2016 +0000
egl/wayland: use the destroy_window_callback for swrast
As described in commit 690ead4a135 ("egl/wayland-egl: Fix for segfault
in dri2_wl_destroy_surface.") if we attempt to destroy a EGL surface
attached to already destroyed Wayland window we'll get a segfault.
v2: set the correct callback alongside the window->private. (Dan)
Cc: Daniel Stone <daniels at collabora.com>
Cc: "12.0 13.0" <mesa-stable at lists.freedesktop.org>
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Reviewed-by: Daniel Stone <daniels at collabora.com>
(cherry picked from commit bfd63143502ff03ceae903f959a6f41666b849bc)
---
src/egl/drivers/dri2/platform_wayland.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c
index 1a295d5..fd4bbf5 100644
--- a/src/egl/drivers/dri2/platform_wayland.c
+++ b/src/egl/drivers/dri2/platform_wayland.c
@@ -1706,6 +1706,8 @@ dri2_wl_swrast_create_window_surface(_EGLDriver *drv, _EGLDisplay *disp,
dri2_surf->format = WL_SHM_FORMAT_ARGB8888;
dri2_surf->wl_win = window;
+ dri2_surf->wl_win->private = dri2_surf;
+ dri2_surf->wl_win->destroy_window_callback = destroy_window_callback;
dri2_surf->base.Width = -1;
dri2_surf->base.Height = -1;
More information about the mesa-commit
mailing list