diff options
author | Thomas Adam <thomas@xteddy.org> | 2016-03-05 10:01:09 +0000 |
---|---|---|
committer | Thomas Adam <thomas@xteddy.org> | 2016-03-05 10:01:09 +0000 |
commit | 81f78f0da7f72b4707f653d70615c7b64c341d44 (patch) | |
tree | 4026db58b521b20d6e191c434167d839d6fa56c6 | |
parent | 6c35d17800b5d745272c45bb4c71bde80780c415 (diff) | |
parent | c38e0a4bbc722865f934db1282ca6f086874f530 (diff) | |
download | rtmux-81f78f0da7f72b4707f653d70615c7b64c341d44.tar.gz rtmux-81f78f0da7f72b4707f653d70615c7b64c341d44.tar.bz2 rtmux-81f78f0da7f72b4707f653d70615c7b64c341d44.zip |
Merge branch 'obsd-master'
-rw-r--r-- | cmd-load-buffer.c | 4 | ||||
-rw-r--r-- | cmd-new-session.c | 2 | ||||
-rw-r--r-- | cmd-save-buffer.c | 4 | ||||
-rw-r--r-- | tmux.c | 7 |
4 files changed, 10 insertions, 7 deletions
diff --git a/cmd-load-buffer.c b/cmd-load-buffer.c index 6fd2a767..de76b855 100644 --- a/cmd-load-buffer.c +++ b/cmd-load-buffer.c @@ -73,9 +73,9 @@ cmd_load_buffer_exec(struct cmd *self, struct cmd_q *cmdq) return (CMD_RETURN_WAIT); } - if (c != NULL && c->session == NULL) + if (c != NULL && c->session == NULL && c->cwd != NULL) cwd = c->cwd; - else if ((s = c->session) != NULL) + else if ((s = c->session) != NULL && s->cwd != NULL) cwd = s->cwd; else cwd = "."; diff --git a/cmd-new-session.c b/cmd-new-session.c index 291107bc..357ffed1 100644 --- a/cmd-new-session.c +++ b/cmd-new-session.c @@ -142,7 +142,7 @@ cmd_new_session_exec(struct cmd *self, struct cmd_q *cmdq) format_defaults(ft, c, NULL, NULL, NULL); to_free = cwd = format_expand(ft, args_get(args, 'c')); format_free(ft); - } else if (c != NULL && c->session == NULL) + } else if (c != NULL && c->session == NULL && c->cwd != NULL) cwd = c->cwd; else cwd = "."; diff --git a/cmd-save-buffer.c b/cmd-save-buffer.c index f8756587..56472565 100644 --- a/cmd-save-buffer.c +++ b/cmd-save-buffer.c @@ -97,9 +97,9 @@ cmd_save_buffer_exec(struct cmd *self, struct cmd_q *cmdq) goto do_print; } - if (c != NULL && c->session == NULL) + if (c != NULL && c->session == NULL && c->cwd != NULL) cwd = c->cwd; - else if ((s = c->session) != NULL) + else if ((s = c->session) != NULL && s->cwd != NULL) cwd = s->cwd; else cwd = "."; @@ -190,9 +190,12 @@ main(int argc, char **argv) const char *s; int opt, flags, keys; - setlocale(LC_CTYPE, "en_US.UTF-8"); - setlocale(LC_TIME, ""); + if (setlocale(LC_CTYPE, "en_US.UTF-8") == NULL) + setlocale(LC_CTYPE, ""); + if (wcwidth(0xfffd) != 1) + errx(1, "no UTF-8 locale; please set LC_CTYPE"); + setlocale(LC_TIME, ""); tzset(); if (**argv == '-') |