From 9c9ee3e4ef9d4e57ec801a79e0b2da1bd2a6d46e Mon Sep 17 00:00:00 2001
From: Dominique Martinet <asmadeus@codewreck.org>
Date: Sat, 30 Jun 2018 22:39:37 +0900
Subject: find prev/next output/workspace: add NULL check

These could be called with NULL if there is no focus

Found through static analysis.
---
 sway/tree/workspace.c | 6 ++++++
 1 file changed, 6 insertions(+)

(limited to 'sway/tree')

diff --git a/sway/tree/workspace.c b/sway/tree/workspace.c
index 5eb4be0f..3a311cd1 100644
--- a/sway/tree/workspace.c
+++ b/sway/tree/workspace.c
@@ -271,6 +271,9 @@ struct sway_container *workspace_by_name(const char *name) {
  */
 struct sway_container *workspace_output_prev_next_impl(
 		struct sway_container *output, bool next) {
+	if (!output) {
+		return NULL;
+	}
 	if (!sway_assert(output->type == C_OUTPUT,
 				"Argument must be an output, is %d", output->type)) {
 		return NULL;
@@ -303,6 +306,9 @@ struct sway_container *workspace_output_prev_next_impl(
  */
 struct sway_container *workspace_prev_next_impl(
 		struct sway_container *workspace, bool next) {
+	if (!workspace) {
+		return NULL;
+	}
 	if (!sway_assert(workspace->type == C_WORKSPACE,
 				"Argument must be a workspace, is %d", workspace->type)) {
 		return NULL;
-- 
cgit v1.2.3