Module: Mesa
Branch: 12.0
Commit: 689ca381b5f7ee799ded0431416cd4dd666e873a
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=689ca381b5f7ee799ded0431416cd4dd666e873a

Author: Emil Velikov <emil.veli...@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 <dani...@collabora.com>
Cc: "12.0 13.0" <mesa-sta...@lists.freedesktop.org>
Signed-off-by: Emil Velikov <emil.veli...@collabora.com>
Reviewed-by: Daniel Stone <dani...@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;

_______________________________________________
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to