forked from aniani/vim
patch 9.1.0546: vim-tiny fails on CTRL-X/CTRL-A
Problem: vim-tiny fails on CTRL-X/CTRL-A (Rob Foehl, after 9.1.0172) Solution: Move #ifdefs, so that after changing the line in del_bytes, the cached textlen value is invalidated closes: #15178 Co-authored-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
@@ -1355,17 +1355,17 @@ del_bytes(
|
||||
mch_memmove(newp + col, oldp + col + count, (size_t)movelen);
|
||||
if (alloc_newp)
|
||||
ml_replace(lnum, newp, FALSE);
|
||||
#ifdef FEAT_PROP_POPUP
|
||||
else
|
||||
{
|
||||
#ifdef FEAT_PROP_POPUP
|
||||
// Also move any following text properties.
|
||||
if (oldlen + 1 < curbuf->b_ml.ml_line_len)
|
||||
mch_memmove(newp + newlen + 1, oldp + oldlen + 1,
|
||||
(size_t)curbuf->b_ml.ml_line_len - oldlen - 1);
|
||||
#endif
|
||||
curbuf->b_ml.ml_line_len -= count;
|
||||
curbuf->b_ml.ml_line_textlen = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
// mark the buffer as changed and prepare for displaying
|
||||
inserted_bytes(lnum, col, -count);
|
||||
|
@@ -20,7 +20,8 @@ SCRIPTS_TINY = \
|
||||
test24 \
|
||||
test25 \
|
||||
test26 \
|
||||
test27
|
||||
test27 \
|
||||
test28
|
||||
|
||||
SCRIPTS_TINY_OUT = \
|
||||
test10.out \
|
||||
@@ -31,7 +32,8 @@ SCRIPTS_TINY_OUT = \
|
||||
test24.out \
|
||||
test25.out \
|
||||
test26.out \
|
||||
test27.out
|
||||
test27.out \
|
||||
test28.out
|
||||
|
||||
# Tests for Vim9 script.
|
||||
TEST_VIM9 = \
|
||||
|
13
src/testdir/test28.in
Normal file
13
src/testdir/test28.in
Normal file
@@ -0,0 +1,13 @@
|
||||
Test for using CTRL-A/CTRL-X in tiny mode
|
||||
|
||||
STARTTEST
|
||||
/12352
|
||||
/12354
|
||||
:/^STARTHERE/+,$w! test.out
|
||||
:qa!
|
||||
ENDTEST
|
||||
|
||||
STARTHERE
|
||||
12352
|
||||
|
||||
12354
|
3
src/testdir/test28.ok
Normal file
3
src/testdir/test28.ok
Normal file
@@ -0,0 +1,3 @@
|
||||
12353
|
||||
|
||||
12353
|
@@ -704,6 +704,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
546,
|
||||
/**/
|
||||
545,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user