summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-02-16 16:33:28 +0000
committerBram Moolenaar <Bram@vim.org>2022-02-16 16:33:28 +0000
commitf9435e49ef8032e80d38e31e950e4a9b75387533 (patch)
treef24f951f96b3a20228e975dc0b564f2a8d212786
parentb31aec3b9387ed12677dca09069c3ae98c6c7447 (diff)
downloadvim-git-f9435e49ef8032e80d38e31e950e4a9b75387533.tar.gz
patch 8.2.4399: crash after ml_get errorv8.2.4399
Problem: Crash after ml_get error. Solution: When returning "???" flush the line and set ml_line_lnum.
-rw-r--r--src/memline.c3
-rw-r--r--src/version.c2
2 files changed, 5 insertions, 0 deletions
diff --git a/src/memline.c b/src/memline.c
index c18109aef..9c15fa774 100644
--- a/src/memline.c
+++ b/src/memline.c
@@ -2619,9 +2619,12 @@ ml_get_buf(
siemsg(_(e_ml_get_invalid_lnum_nr), lnum);
--recursive;
}
+ ml_flush_line(buf);
+ buf->b_ml.ml_flags &= ~ML_LINE_DIRTY;
errorret:
STRCPY(questions, "???");
buf->b_ml.ml_line_len = 4;
+ buf->b_ml.ml_line_lnum = lnum;
return questions;
}
if (lnum <= 0) // pretend line 0 is line 1
diff --git a/src/version.c b/src/version.c
index 4bfca872c..4f17acffd 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 4399,
+/**/
4398,
/**/
4397,