mirror of
https://github.com/vim/vim.git
synced 2025-11-13 22:54:27 -05:00
patch 8.1.1890: ml_get error when deleting fold marker
Problem: Ml_get error when deleting fold marker.
Solution: Check that the line number is not below the last line. Adjust the
fold when deleting the empty line. (Christian Brabandt,
closes #4834)
This commit is contained in:
@@ -9346,13 +9346,15 @@ nv_put_opt(cmdarg_T *cap, int fix_indent)
|
||||
reg1 = get_register(regname, TRUE);
|
||||
}
|
||||
|
||||
/* Now delete the selected text. */
|
||||
// Now delete the selected text. Avoid messages here.
|
||||
cap->cmdchar = 'd';
|
||||
cap->nchar = NUL;
|
||||
cap->oap->regname = NUL;
|
||||
++msg_silent;
|
||||
nv_operator(cap);
|
||||
do_pending_operator(cap, 0, FALSE);
|
||||
empty = (curbuf->b_ml.ml_flags & ML_EMPTY);
|
||||
--msg_silent;
|
||||
|
||||
/* delete PUT_LINE_BACKWARD; */
|
||||
cap->oap->regname = regname;
|
||||
@@ -9407,6 +9409,7 @@ nv_put_opt(cmdarg_T *cap, int fix_indent)
|
||||
if (empty && *ml_get(curbuf->b_ml.ml_line_count) == NUL)
|
||||
{
|
||||
ml_delete(curbuf->b_ml.ml_line_count, TRUE);
|
||||
deleted_lines(curbuf->b_ml.ml_line_count + 1, 1);
|
||||
|
||||
/* If the cursor was in that line, move it to the end of the last
|
||||
* line. */
|
||||
|
||||
Reference in New Issue
Block a user