Handle NULL from output_get_active_workspace

This modifies the places where output_get_active_workspace is called to
handle a NULL result. Some places already handled it and did not need a
change, some just have guard off code blocks, others return errors, and
some have sway_asserts since the case should never happen. A lot of this
is probably just safety precautions since they probably will never be
called when `output_get_active_workspace` is not fully configured with a
workspace.
This commit is contained in:
Brian Ashworth 2019-02-21 13:24:13 -05:00 committed by emersion
parent 79c133182d
commit d3d7956576
10 changed files with 50 additions and 3 deletions

View file

@ -118,6 +118,10 @@ static void container_swap(struct sway_container *con1,
output_get_active_workspace(con1->workspace->output);
struct sway_workspace *vis2 =
output_get_active_workspace(con2->workspace->output);
if (!sway_assert(vis1 && vis2, "con1 or con2 are on an output without a"
"workspace. This should not happen")) {
return;
}
char *stored_prev_name = NULL;
if (seat->prev_workspace_name) {