Do not use c->cwd or s->cwd if it is NULL, found by Ben Boeckel.

pull/355/head
nicm 2016-03-05 07:47:52 +00:00
parent 1f0b317088
commit c38e0a4bbc
3 changed files with 5 additions and 5 deletions

View File

@ -73,9 +73,9 @@ cmd_load_buffer_exec(struct cmd *self, struct cmd_q *cmdq)
return (CMD_RETURN_WAIT); return (CMD_RETURN_WAIT);
} }
if (c != NULL && c->session == NULL) if (c != NULL && c->session == NULL && c->cwd != NULL)
cwd = c->cwd; cwd = c->cwd;
else if ((s = c->session) != NULL) else if ((s = c->session) != NULL && s->cwd != NULL)
cwd = s->cwd; cwd = s->cwd;
else else
cwd = "."; cwd = ".";

View File

@ -142,7 +142,7 @@ cmd_new_session_exec(struct cmd *self, struct cmd_q *cmdq)
format_defaults(ft, c, NULL, NULL, NULL); format_defaults(ft, c, NULL, NULL, NULL);
to_free = cwd = format_expand(ft, args_get(args, 'c')); to_free = cwd = format_expand(ft, args_get(args, 'c'));
format_free(ft); format_free(ft);
} else if (c != NULL && c->session == NULL) } else if (c != NULL && c->session == NULL && c->cwd != NULL)
cwd = c->cwd; cwd = c->cwd;
else else
cwd = "."; cwd = ".";

View File

@ -98,9 +98,9 @@ cmd_save_buffer_exec(struct cmd *self, struct cmd_q *cmdq)
goto do_print; goto do_print;
} }
if (c != NULL && c->session == NULL) if (c != NULL && c->session == NULL && c->cwd != NULL)
cwd = c->cwd; cwd = c->cwd;
else if ((s = c->session) != NULL) else if ((s = c->session) != NULL && s->cwd != NULL)
cwd = s->cwd; cwd = s->cwd;
else else
cwd = "."; cwd = ".";