From 94e7d13e17be9ac75c613e538a5a43b74e92997b Mon Sep 17 00:00:00 2001 From: hwangcc23 Date: Tue, 22 Sep 2015 23:04:10 +0800 Subject: [PATCH] Not toggle floating on a CT_FLOATING_CON See the issue #1875. Forbid the command to toggle floating on a CT_FLOATING_CON to avoid the crash. --- src/floating.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/floating.c b/src/floating.c index 67c3a1b8..d7a33067 100644 --- a/src/floating.c +++ b/src/floating.c @@ -369,6 +369,12 @@ void floating_disable(Con *con, bool automatic) { * */ void toggle_floating_mode(Con *con, bool automatic) { + /* forbid the command to toggle floating on a CT_FLOATING_CON */ + if (con->type == CT_FLOATING_CON) { + ELOG("Cannot toggle floating mode on con = %p because it is of type CT_FLOATING_CON.\n", con); + return; + } + /* see if the client is already floating */ if (con_is_floating(con)) { LOG("already floating, re-setting to tiling\n");