aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/nvim/eval.c10
-rw-r--r--src/nvim/version.c2
2 files changed, 9 insertions, 3 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index 3a8974bca1..1065f1caf9 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -18913,6 +18913,7 @@ call_user_func (
char_u *name;
proftime_T wait_start;
proftime_T call_start;
+ bool did_save_redo = false;
/* If depth of calling is getting too high, don't execute the function */
if (depth >= p_mfd) {
@@ -18924,7 +18925,10 @@ call_user_func (
++depth;
// Save search patterns and redo buffer.
save_search_patterns();
- saveRedobuff();
+ if (!ins_compl_active()) {
+ saveRedobuff();
+ did_save_redo = true;
+ }
++fp->uf_calls;
// check for CTRL-C hit
line_breakcheck();
@@ -19239,7 +19243,9 @@ call_user_func (
func_free(fp);
}
// restore search patterns and redo buffer
- restoreRedobuff();
+ if (did_save_redo) {
+ restoreRedobuff();
+ }
restore_search_patterns();
}
diff --git a/src/nvim/version.c b/src/nvim/version.c
index 1d0804796e..8622f9fe8a 100644
--- a/src/nvim/version.c
+++ b/src/nvim/version.c
@@ -146,7 +146,7 @@ static int included_patches[] = {
636,
//635,
//634,
- //633,
+ 633,
//632,
//631,
630,