diff options
author | Thiago de Arruda <tpadilha84@gmail.com> | 2015-09-18 15:12:12 -0300 |
---|---|---|
committer | Thiago de Arruda <tpadilha84@gmail.com> | 2015-09-18 15:12:12 -0300 |
commit | e80d7c0df7ec6e88a964e58d86a70c8f980e4cc1 (patch) | |
tree | 0037b05c1a27aaaf31c038a32f3a64100a8f3ccf /src/nvim/edit.c | |
parent | a4c41735359d0114e678cbf4888c514f604f01dd (diff) | |
parent | e897ccad3eb1eb8d423766300be9c6055fcd1d9f (diff) | |
download | rneovim-e80d7c0df7ec6e88a964e58d86a70c8f980e4cc1.tar.gz rneovim-e80d7c0df7ec6e88a964e58d86a70c8f980e4cc1.tar.bz2 rneovim-e80d7c0df7ec6e88a964e58d86a70c8f980e4cc1.zip |
Merge PR #3309 'Fixes for 0.1'
Diffstat (limited to 'src/nvim/edit.c')
-rw-r--r-- | src/nvim/edit.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/nvim/edit.c b/src/nvim/edit.c index 6bcf5e804a..427623e052 100644 --- a/src/nvim/edit.c +++ b/src/nvim/edit.c @@ -254,7 +254,16 @@ edit ( ) { if (curbuf->terminal) { - terminal_enter(); + if (ex_normal_busy) { + // don't enter terminal mode from `ex_normal`, which can result in all + // kinds of havoc(such as terminal mode recursiveness). Instead, set a + // flag that allow us to force-set the value of `restart_edit` before + // `ex_normal` returns + restart_edit = 'i'; + force_restart_edit = true; + } else { + terminal_enter(); + } return false; } |