summaryrefslogtreecommitdiffstats
path: root/src/proto/change.pro
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-05-14 21:20:36 +0200
committerBram Moolenaar <Bram@vim.org>2019-05-14 21:20:36 +0200
commitfe1ade0a78a70a4c7ddaebb6964497f037f4997a (patch)
tree2a19d938a6a5cc48aa729feb4caebd09c8a5a0d1 /src/proto/change.pro
parentfb222df28d5158516104a21cba7141a6240f4817 (diff)
patch 8.1.1332: cannot flush listeners without redrawing, mix of changesv8.1.1332
Problem: Cannot flush change listeners without also redrawing. The line numbers in the list of changes may become invalid. Solution: Add listener_flush(). Invoke listeners before adding a change that makes line numbers invalid.
Diffstat (limited to 'src/proto/change.pro')
-rw-r--r--src/proto/change.pro3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/proto/change.pro b/src/proto/change.pro
index 4e8a1e64c7..f0f390b05b 100644
--- a/src/proto/change.pro
+++ b/src/proto/change.pro
@@ -3,8 +3,9 @@ void change_warning(int col);
void changed(void);
void changed_internal(void);
void f_listener_add(typval_T *argvars, typval_T *rettv);
+void f_listener_flush(typval_T *argvars, typval_T *rettv);
void f_listener_remove(typval_T *argvars, typval_T *rettv);
-void invoke_listeners(void);
+void invoke_listeners(buf_T *buf);
void changed_bytes(linenr_T lnum, colnr_T col);
void inserted_bytes(linenr_T lnum, colnr_T col, int added);
void appended_lines(linenr_T lnum, long count);