Mercurial > vim
diff src/eval.c @ 20229:06a1dd50463e v8.2.0670
patch 8.2.0670: cannot change window when evaluating 'completefunc'
Commit: https://github.com/vim/vim/commit/6adb9ea0a6ca01414f4b591f379b0f829a8273c0
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Apr 30 22:31:18 2020 +0200
patch 8.2.0670: cannot change window when evaluating 'completefunc'
Problem: Cannot change window when evaluating 'completefunc'.
Solution: Make a difference between not changing text or buffers and also
not changing window.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 30 Apr 2020 22:45:04 +0200 |
parents | 94f05de75e9f |
children | 683c2da4982b |
line wrap: on
line diff
--- a/src/eval.c +++ b/src/eval.c @@ -393,7 +393,7 @@ eval_to_string( /* * Call eval_to_string() without using current local variables and using - * textlock. When "use_sandbox" is TRUE use the sandbox. + * textwinlock. When "use_sandbox" is TRUE use the sandbox. */ char_u * eval_to_string_safe( @@ -407,11 +407,11 @@ eval_to_string_safe( save_funccal(&funccal_entry); if (use_sandbox) ++sandbox; - ++textlock; + ++textwinlock; retval = eval_to_string(arg, nextcmd, FALSE); if (use_sandbox) --sandbox; - --textlock; + --textwinlock; restore_funccal(); return retval; } @@ -576,7 +576,7 @@ eval_foldexpr(char_u *arg, int *cp) ++emsg_off; if (use_sandbox) ++sandbox; - ++textlock; + ++textwinlock; *cp = NUL; if (eval0(arg, &tv, NULL, TRUE) == FAIL) retval = 0; @@ -601,7 +601,7 @@ eval_foldexpr(char_u *arg, int *cp) --emsg_off; if (use_sandbox) --sandbox; - --textlock; + --textwinlock; return (int)retval; }