diff options
author | Bram Moolenaar <Bram@vim.org> | 2018-03-09 21:33:34 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2018-03-09 21:33:34 +0100 |
commit | 4d8bac8bf593ff087517ff79090c2d224325aae6 (patch) | |
tree | 51e277a9012731df3a3dc362af5c5db39991485a /src/channel.c | |
parent | 20586cb4f4d516a60b96cc02a94b810fea8b8cdb (diff) | |
download | vim-git-4d8bac8bf593ff087517ff79090c2d224325aae6.tar.gz |
patch 8.0.1592: terminal windows in a session are not properly restoredv8.0.1592
Problem: Terminal windows in a session are not properly restored.
Solution: Add "terminal" in 'sessionoptions'. When possible restore the
command running in a terminal.
Diffstat (limited to 'src/channel.c')
-rw-r--r-- | src/channel.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/channel.c b/src/channel.c index 93c809ca6..7c574427a 100644 --- a/src/channel.c +++ b/src/channel.c @@ -4777,6 +4777,13 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2) opt->jo_set |= JO2_HIDDEN; opt->jo_hidden = get_tv_number(item); } + else if (STRCMP(hi->hi_key, "norestore") == 0) + { + if (!(supported2 & JO2_NORESTORE)) + break; + opt->jo_set |= JO2_NORESTORE; + opt->jo_term_norestore = get_tv_number(item); + } #endif else if (STRCMP(hi->hi_key, "env") == 0) { @@ -5470,6 +5477,7 @@ job_start(typval_T *argvars, jobopt_T *opt_arg) goto theend; } #ifdef USE_ARGV + /* This will modify "cmd". */ if (mch_parse_cmd(cmd, FALSE, &argv, &argc) == FAIL) goto theend; argv[argc] = NULL; |