summaryrefslogtreecommitdiff
path: root/src/evalbuffer.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2021-01-02 13:53:59 +0100
committerBram Moolenaar <Bram@vim.org>2021-01-02 13:53:59 +0100
commit3e0107ea16349b354e0e9712e95b09ef019e99e5 (patch)
tree03a5a0c54bbb1a242276646c6ff50e4cf3e09750 /src/evalbuffer.c
parent38a434f7ba89ab2602019476219780e07fd8251f (diff)
downloadvim-git-3e0107ea16349b354e0e9712e95b09ef019e99e5.tar.gz
patch 8.2.2271: ml_get error when changing hidden buffer in Pythonv8.2.2271
Problem: ml_get error when changing hidden buffer in Python. Solution: Block updating folds. (closes #7598)
Diffstat (limited to 'src/evalbuffer.c')
-rw-r--r--src/evalbuffer.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/evalbuffer.c b/src/evalbuffer.c
index eabe626f5..376c1fe30 100644
--- a/src/evalbuffer.c
+++ b/src/evalbuffer.c
@@ -807,6 +807,9 @@ f_setline(typval_T *argvars, typval_T *rettv)
switch_buffer(bufref_T *save_curbuf, buf_T *buf)
{
block_autocmds();
+#ifdef FEAT_FOLDING
+ ++disable_fold_update;
+#endif
set_bufref(save_curbuf, curbuf);
--curbuf->b_nwindows;
curbuf = buf;
@@ -821,6 +824,9 @@ switch_buffer(bufref_T *save_curbuf, buf_T *buf)
restore_buffer(bufref_T *save_curbuf)
{
unblock_autocmds();
+#ifdef FEAT_FOLDING
+ --disable_fold_update;
+#endif
// Check for valid buffer, just in case.
if (bufref_valid(save_curbuf))
{