diff options
Diffstat (limited to 'cmd-new-window.c')
-rw-r--r-- | cmd-new-window.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/cmd-new-window.c b/cmd-new-window.c index 32c42eb4..b44be0b2 100644 --- a/cmd-new-window.c +++ b/cmd-new-window.c @@ -176,10 +176,13 @@ cmd_new_window_exec(struct cmd *self, struct cmd_ctx *ctx) cmd = data->cmd; if (cmd == NULL) cmd = options_get_string(&s->options, "default-command"); - if (ctx->cmdclient == NULL || ctx->cmdclient->cwd == NULL) - cwd = options_get_string(&s->options, "default-path"); - else - cwd = ctx->cmdclient->cwd; + cwd = options_get_string(&s->options, "default-path"); + if (*cwd == '\0') { + if (ctx->cmdclient != NULL && ctx->cmdclient->cwd != NULL) + cwd = ctx->cmdclient->cwd; + else + cwd = s->cwd; + } if (idx == -1) idx = -1 - options_get_number(&s->options, "base-index"); |