From e0cfe1f8c035d787ab4930839bd24507a3f01abb Mon Sep 17 00:00:00 2001 From: Michael Stapelberg Date: Fri, 25 Jan 2013 14:14:06 +0100 Subject: [PATCH] Bugfix: fix crash when disabling output without any windows (Thanks xeen, knopwob) fixes #919 --- src/render.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/render.c b/src/render.c index 476d1ca8..a0d66d82 100644 --- a/src/render.c +++ b/src/render.c @@ -50,6 +50,10 @@ static void render_l_output(Con *con) { * and take the short-cut to render it directly (the user does not want to * see the dockareas in that case) */ Con *ws = con_get_fullscreen_con(content, CF_OUTPUT); + if (!ws) { + DLOG("Skipping this output because it is currently being destroyed.\n"); + return; + } Con *fullscreen = con_get_fullscreen_con(ws, CF_OUTPUT); if (fullscreen) { fullscreen->rect = con->rect; @@ -245,6 +249,10 @@ void render_con(Con *con, bool render_fullscreen) { continue; /* Get the active workspace of that output */ Con *content = output_get_content(output); + if (!content || TAILQ_EMPTY(&(content->focus_head))) { + DLOG("Skipping this output because it is currently being destroyed.\n"); + continue; + } Con *workspace = TAILQ_FIRST(&(content->focus_head)); Con *fullscreen = con_get_fullscreen_con(workspace, CF_OUTPUT); Con *child; -- 2.39.2