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);
|
mch_memmove(newp + col, oldp + col + count, (size_t)movelen);
|
||||||
if (alloc_newp)
|
if (alloc_newp)
|
||||||
ml_replace(lnum, newp, FALSE);
|
ml_replace(lnum, newp, FALSE);
|
||||||
#ifdef FEAT_PROP_POPUP
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
#ifdef FEAT_PROP_POPUP
|
||||||
// Also move any following text properties.
|
// Also move any following text properties.
|
||||||
if (oldlen + 1 < curbuf->b_ml.ml_line_len)
|
if (oldlen + 1 < curbuf->b_ml.ml_line_len)
|
||||||
mch_memmove(newp + newlen + 1, oldp + oldlen + 1,
|
mch_memmove(newp + newlen + 1, oldp + oldlen + 1,
|
||||||
(size_t)curbuf->b_ml.ml_line_len - 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_len -= count;
|
||||||
curbuf->b_ml.ml_line_textlen = 0;
|
curbuf->b_ml.ml_line_textlen = 0;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
// mark the buffer as changed and prepare for displaying
|
// mark the buffer as changed and prepare for displaying
|
||||||
inserted_bytes(lnum, col, -count);
|
inserted_bytes(lnum, col, -count);
|
||||||
|
@@ -20,7 +20,8 @@ SCRIPTS_TINY = \
|
|||||||
test24 \
|
test24 \
|
||||||
test25 \
|
test25 \
|
||||||
test26 \
|
test26 \
|
||||||
test27
|
test27 \
|
||||||
|
test28
|
||||||
|
|
||||||
SCRIPTS_TINY_OUT = \
|
SCRIPTS_TINY_OUT = \
|
||||||
test10.out \
|
test10.out \
|
||||||
@@ -31,7 +32,8 @@ SCRIPTS_TINY_OUT = \
|
|||||||
test24.out \
|
test24.out \
|
||||||
test25.out \
|
test25.out \
|
||||||
test26.out \
|
test26.out \
|
||||||
test27.out
|
test27.out \
|
||||||
|
test28.out
|
||||||
|
|
||||||
# Tests for Vim9 script.
|
# Tests for Vim9 script.
|
||||||
TEST_VIM9 = \
|
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[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
546,
|
||||||
/**/
|
/**/
|
||||||
545,
|
545,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user