Merge pull request #2885 from RyanDwyer/fix-tiling-drag-crash

Fix crash when ending tiling drag
This commit is contained in:
Drew DeVault 2018-10-20 01:18:23 +02:00 committed by GitHub
commit 3b8dd49583
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1110,9 +1110,6 @@ static void seat_end_move_tiling(struct sway_seat *seat) {
int after = edge != WLR_EDGE_TOP && edge != WLR_EDGE_LEFT; int after = edge != WLR_EDGE_TOP && edge != WLR_EDGE_LEFT;
container_detach(con); container_detach(con);
if (old_parent) {
container_reap_empty(old_parent);
}
// Moving container into empty workspace // Moving container into empty workspace
if (target_node->type == N_WORKSPACE && edge == WLR_EDGE_NONE) { if (target_node->type == N_WORKSPACE && edge == WLR_EDGE_NONE) {
@ -1135,6 +1132,10 @@ static void seat_end_move_tiling(struct sway_seat *seat) {
workspace_insert_tiling(new_ws, con, after); workspace_insert_tiling(new_ws, con, after);
} }
if (old_parent) {
container_reap_empty(old_parent);
}
// This is a bit dirty, but we'll set the dimensions to that of a sibling. // This is a bit dirty, but we'll set the dimensions to that of a sibling.
// I don't think there's any other way to make it consistent without // I don't think there's any other way to make it consistent without
// changing how we auto-size containers. // changing how we auto-size containers.