patch 8.1.1681: insert stray "{" when listener gets buffer line
Problem: Insert stray "{" when listener gets buffer line. (Paul Jolly)
Solution: Flush the cached line after invoking listeners. (closes #4455)
diff --git a/src/memline.c b/src/memline.c
index 0e3bdb8..b9de06e 100644
--- a/src/memline.c
+++ b/src/memline.c
@@ -2836,8 +2836,10 @@
#ifdef FEAT_EVAL
// When inserting above recorded changes: flush the changes before changing
- // the text.
+ // the text. Then flush the cached line, it may become invalid.
may_invoke_listeners(buf, lnum + 1, lnum + 1, 1);
+ if (curbuf->b_ml.ml_line_lnum != 0)
+ ml_flush_line(curbuf);
#endif
#ifdef FEAT_TEXT_PROP