diff --git a/cmd-new-session.c b/cmd-new-session.c index 5e69a77c..49ece8b4 100644 --- a/cmd-new-session.c +++ b/cmd-new-session.c @@ -115,7 +115,7 @@ cmd_new_session_exec(struct cmd *self, struct cmd_q *cmdq) return (CMD_RETURN_ERROR); } cwd = fd; - } else if (c->session == NULL) + } else if (c != NULL && c->session == NULL) cwd = c->cwd; else if ((c0 = cmd_current_client(cmdq)) != NULL) cwd = c0->session->cwd; diff --git a/cmd-new-window.c b/cmd-new-window.c index 445f0a33..e2a01190 100644 --- a/cmd-new-window.c +++ b/cmd-new-window.c @@ -125,7 +125,7 @@ cmd_new_window_exec(struct cmd *self, struct cmd_q *cmdq) return (CMD_RETURN_ERROR); } cwd = fd; - } else if (cmdq->client->session == NULL) + } else if (cmdq->client != NULL && cmdq->client->session == NULL) cwd = cmdq->client->cwd; else cwd = s->cwd; diff --git a/cmd-split-window.c b/cmd-split-window.c index 43d47c47..92e6121f 100644 --- a/cmd-split-window.c +++ b/cmd-split-window.c @@ -103,7 +103,7 @@ cmd_split_window_exec(struct cmd *self, struct cmd_q *cmdq) return (CMD_RETURN_ERROR); } cwd = fd; - } else if (cmdq->client->session == NULL) + } else if (cmdq->client != NULL && cmdq->client->session == NULL) cwd = cmdq->client->cwd; else cwd = s->cwd;