diff options
author | Bram Moolenaar <Bram@vim.org> | 2022-02-16 16:33:28 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-02-16 16:33:28 +0000 |
commit | f9435e49ef8032e80d38e31e950e4a9b75387533 (patch) | |
tree | f24f951f96b3a20228e975dc0b564f2a8d212786 | |
parent | b31aec3b9387ed12677dca09069c3ae98c6c7447 (diff) | |
download | vim-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.c | 3 | ||||
-rw-r--r-- | src/version.c | 2 |
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, |