diff options
author | Anmol Sethi <anmol@aubble.com> | 2016-03-04 15:06:48 -0500 |
---|---|---|
committer | Anmol Sethi <anmol@aubble.com> | 2016-03-09 10:04:15 -0500 |
commit | 0b468fd0cf2801c5fbca0bc17b51d6e9e5499db1 (patch) | |
tree | 58d75a91fdaaab43e989c41614eb32ed4944313d /src | |
parent | 890ce792af102abe37f24f9674b5924b79fbfa27 (diff) | |
download | rneovim-0b468fd0cf2801c5fbca0bc17b51d6e9e5499db1.tar.gz rneovim-0b468fd0cf2801c5fbca0bc17b51d6e9e5499db1.tar.bz2 rneovim-0b468fd0cf2801c5fbca0bc17b51d6e9e5499db1.zip |
complete: disable folding when completing
Fixes vim/vim#643
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/edit.c | 4 | ||||
-rw-r--r-- | src/nvim/fold.c | 4 | ||||
-rw-r--r-- | src/nvim/globals.h | 4 |
3 files changed, 8 insertions, 4 deletions
diff --git a/src/nvim/edit.c b/src/nvim/edit.c index beae55b8a8..3729cd5f2d 100644 --- a/src/nvim/edit.c +++ b/src/nvim/edit.c @@ -165,10 +165,6 @@ static int compl_restarting = FALSE; /* don't insert match */ * FALSE the word to be completed must be located. */ static int compl_started = FALSE; -/* Set when doing something for completion that may call edit() recursively, - * which is not allowed. */ -static int compl_busy = FALSE; - static int compl_matches = 0; static char_u *compl_pattern = NULL; static int compl_direction = FORWARD; diff --git a/src/nvim/fold.c b/src/nvim/fold.c index 6c135ef47b..70ab4ced75 100644 --- a/src/nvim/fold.c +++ b/src/nvim/fold.c @@ -762,6 +762,10 @@ void clearFolding(win_T *win) */ void foldUpdate(win_T *wp, linenr_T top, linenr_T bot) { + if (compl_busy) { + return; + } + fold_T *fp; if (wp->w_buffer->terminal) { return; diff --git a/src/nvim/globals.h b/src/nvim/globals.h index 69e65c3208..618245ea23 100644 --- a/src/nvim/globals.h +++ b/src/nvim/globals.h @@ -214,6 +214,10 @@ EXTERN int compl_length INIT(= 0); * stop looking for matches. */ EXTERN int compl_interrupted INIT(= FALSE); +// Set when doing something for completion that may call edit() recursively, +// which is not allowed. Also used to disable folding during completion +EXTERN int compl_busy INIT(= false); + /* List of flags for method of completion. */ EXTERN int compl_cont_status INIT(= 0); # define CONT_ADDING 1 /* "normal" or "adding" expansion */ |