sway

i3-compatible Wayland compositor
git clone https://git.awy.one/sway
Log | Files | Refs | README | LICENSE

commit 44b550298ed64043d54b40f98d627908d37a37d2
parent c8d1f376d35132ba119e1f02b6640484c55a34c7
Author: Ryan Dwyer <ryandwyer1@gmail.com>
Date:   Fri,  5 Oct 2018 16:39:20 +1000

Fix crash when flattening container after moving

container_flatten removes the container from the tree (via
container_replace) before destroying it. When destroying, the recent
changes to handle_seat_node_destroy incorrectly assumes that the
container has a parent.

This adds a check for destroying a container which is no longer in the
tree. If this is the case, focus does not need to be changed.

Diffstat:
Msway/input/seat.c | 5+++++
1 file changed, 5 insertions(+), 0 deletions(-)

diff --git a/sway/input/seat.c b/sway/input/seat.c @@ -157,6 +157,11 @@ static void handle_seat_node_destroy(struct wl_listener *listener, void *data) { seat_node_destroy(seat_node); + if (!parent) { + // Destroying a container that is no longer in the tree + return; + } + // Find new focus_inactive (ie. sibling, or workspace if no siblings left) struct sway_node *next_focus = NULL; while (next_focus == NULL) {