diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-09-08 14:39:30 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-09-08 14:39:30 +0200 |
commit | 2dc9d26c14e410c09e538cccfa90da19ae344ba4 (patch) | |
tree | a64bfe611511770d918f712be72d9e5c4378ba82 /src/os_unix.c | |
parent | ba2929b6afd2fc20479912a8dec789be26a38244 (diff) | |
download | vim-git-2dc9d26c14e410c09e538cccfa90da19ae344ba4.tar.gz |
patch 8.0.1074: ":term NONE" does not work on MS-Windowsv8.0.1074
Problem: ":term NONE" does not work on MS-Windows.
Solution: Make it work. Split "pty" into "pty_in" and "pty_out". (Yasuhiro
Matsumoto, closes #2058, closes #2045)
Diffstat (limited to 'src/os_unix.c')
-rw-r--r-- | src/os_unix.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/os_unix.c b/src/os_unix.c index 1ec59fcdc..3366efd1d 100644 --- a/src/os_unix.c +++ b/src/os_unix.c @@ -5263,7 +5263,11 @@ mch_job_start(char **argv, job_T *job, jobopt_T *options) && (!(use_file_for_in || use_null_for_in) || !(use_file_for_in || use_null_for_out) || !(use_out_for_err || use_file_for_err || use_null_for_err))) - open_pty(&pty_master_fd, &pty_slave_fd, &job->jv_tty_name); + { + open_pty(&pty_master_fd, &pty_slave_fd, &job->jv_tty_out); + if (job->jv_tty_out != NULL) + job->jv_tty_in = vim_strsave(job->jv_tty_out); + } /* TODO: without the channel feature connect the child to /dev/null? */ /* Open pipes for stdin, stdout, stderr. */ @@ -5687,7 +5691,9 @@ mch_create_pty_channel(job_T *job, jobopt_T *options) int pty_slave_fd = -1; channel_T *channel; - open_pty(&pty_master_fd, &pty_slave_fd, &job->jv_tty_name); + open_pty(&pty_master_fd, &pty_slave_fd, &job->jv_tty_out); + if (job->jv_tty_out != NULL) + job->jv_tty_in = vim_strsave(job->jv_tty_out); close(pty_slave_fd); channel = add_channel(); |