vim-patch:8.1.1711: listener callback called at the wrong moment

Problem:    Listener callback called at the wrong moment
Solution:   Invoke listeners before calling ml_delete_int(). (closes vim/vim#4657)

acf7544cf6

Co-authored-by: Bram Moolenaar <Bram@vim.org>
(cherry picked from commit 750c350be8)
This commit is contained in:
Jan Edmund Lazo
2025-08-10 19:17:22 -04:00
committed by github-actions[bot]
parent d573ffcfc7
commit 7159a0192b

View File

@@ -2542,6 +2542,10 @@ int ml_replace_buf(buf_T *buf, linenr_T lnum, char *line, bool copy, bool noallo
int ml_delete(linenr_T lnum, bool message)
{
ml_flush_line(curbuf, false);
if (lnum < 1 || lnum > curbuf->b_ml.ml_line_count) {
return FAIL;
}
return ml_delete_int(curbuf, lnum, message);
}
@@ -2560,10 +2564,6 @@ int ml_delete_buf(buf_T *buf, linenr_T lnum, bool message)
static int ml_delete_int(buf_T *buf, linenr_T lnum, bool message)
{
if (lnum < 1 || lnum > buf->b_ml.ml_line_count) {
return FAIL;
}
if (lowest_marked && lowest_marked > lnum) {
lowest_marked--;
}