diff options
author | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-02-03 22:36:52 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-03 22:36:52 -0500 |
commit | b96db38af184b1a271c88a4c89e709ce32143514 (patch) | |
tree | 9bf20d69202e83921a657fab8baef564368e173a /src/nvim/ex_cmds.c | |
parent | 4a1a86a2bea4b88a8c981cabf2cf131830012edc (diff) | |
parent | da3f9778aff8cfa134adec3fca93c00d82bcf4af (diff) | |
download | rneovim-b96db38af184b1a271c88a4c89e709ce32143514.tar.gz rneovim-b96db38af184b1a271c88a4c89e709ce32143514.tar.bz2 rneovim-b96db38af184b1a271c88a4c89e709ce32143514.zip |
Merge pull request #13865 from janlazo/vim-8.2.2437
vim-patch:8.2.{2437,2439,2442,2446,2447,2448,2457,2458,2462,2464}
Diffstat (limited to 'src/nvim/ex_cmds.c')
-rw-r--r-- | src/nvim/ex_cmds.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/nvim/ex_cmds.c b/src/nvim/ex_cmds.c index 2da8c205c1..9239eb5ca6 100644 --- a/src/nvim/ex_cmds.c +++ b/src/nvim/ex_cmds.c @@ -790,7 +790,10 @@ void ex_retab(exarg_T *eap) for (col = 0; col < len; col++) { ptr[col] = (col < num_tabs) ? '\t' : ' '; } - ml_replace(lnum, new_line, false); + if (ml_replace(lnum, new_line, false) == OK) { + // "new_line" may have been copied + new_line = curbuf->b_ml.ml_line_ptr; + } if (first_line == 0) { first_line = lnum; } @@ -2413,7 +2416,10 @@ int do_ecmd( (flags & ECMD_HIDE) || curbuf->terminal ? 0 : DOBUF_UNLOAD, false); - the_curwin->w_closing = false; + // Autocommands may have closed the window. + if (win_valid(the_curwin)) { + the_curwin->w_closing = false; + } buf->b_locked--; // autocmds may abort script processing |