diff --git a/sway/ipc.c b/sway/ipc.c index abf2ed0cf..0d1117783 100644 --- a/sway/ipc.c +++ b/sway/ipc.c @@ -253,7 +253,7 @@ void ipc_client_handle_command(struct ipc_client *client) { default: sway_log(L_INFO, "Unknown IPC command type %i", client->current_command); ipc_client_disconnect(client); - break; + return; } client->payload_length = 0; diff --git a/sway/resize.c b/sway/resize.c index 22d520af5..f1b1f4ae4 100644 --- a/sway/resize.c +++ b/sway/resize.c @@ -20,7 +20,7 @@ bool resize_tiled(int amount, bool use_width) { int lnumber = 0; int rnumber = 0; while (parent->parent) { - if (parent->parent->layout == L_HORIZ) { + if (parent->parent->layout == L_HORIZ && parent->parent->children) { for (i = 0; i < parent->parent->children->length; i++) { sibling = parent->parent->children->items[i]; if (sibling->x != focused->x) { @@ -143,7 +143,7 @@ bool resize_tiled(int amount, bool use_width) { } parent = parent->parent; } - if (parent == &root_container) { + if (parent->parent == NULL || parent->parent->children == NULL) { return true; } sway_log(L_DEBUG, "Found the proper parent: %p. It has %d b conts, and %d t conts", parent->parent, bnumber, tnumber);