commit e7fff215ada3fd3d1b2af664888f960c082f9065 made initializing the selection_listener conditional, but didn't make its clean-up conditional at shutdown.
To see this, run weston -Bheadless-backend.so and then connect to it with an X client. When killing weston it will attempt shutdown but die with a segfault. Signed-off-by: Derek Foreman <der...@osg.samsung.com> --- xwayland/window-manager.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xwayland/window-manager.c b/xwayland/window-manager.c index ac44a29a..c565d21f 100644 --- a/xwayland/window-manager.c +++ b/xwayland/window-manager.c @@ -2618,7 +2618,8 @@ weston_wm_destroy(struct weston_wm *wm) weston_wm_destroy_cursors(wm); xcb_disconnect(wm->conn); wl_event_source_remove(wm->source); - wl_list_remove(&wm->selection_listener.link); + if (wm->selection_listener.notify) + wl_list_remove(&wm->selection_listener.link); wl_list_remove(&wm->activate_listener.link); wl_list_remove(&wm->kill_listener.link); wl_list_remove(&wm->create_surface_listener.link); -- 2.14.3 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel