patch 9.1.0172: More code can use ml_get_buf_len() instead of STRLEN()
Problem: More code can use ml_get_buf_len() instead of STRLEN().
Solution: Change more STRLEN() calls to ml_get_buf_len(). Also do not
set ml_line_textlen in ml_replace_len() if "has_props" is set,
because "len_arg" also includes the size of text properties in
that case. (zeertzjq)
closes: #14183
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
5cac1a9bee
commit
94b7c3233e
@ -780,9 +780,9 @@ qf_get_next_buf_line(qfstate_T *state)
|
||||
return QF_END_OF_INPUT;
|
||||
|
||||
p_buf = ml_get_buf(state->buf, state->buflnum, FALSE);
|
||||
len = ml_get_buf_len(state->buf, state->buflnum);
|
||||
state->buflnum += 1;
|
||||
|
||||
len = (int)STRLEN(p_buf);
|
||||
if (len > IOSIZE - 2)
|
||||
{
|
||||
state->linebuf = qf_grow_linebuf(state, len);
|
||||
@ -6196,13 +6196,14 @@ vgr_match_buflines(
|
||||
break;
|
||||
col = regmatch->endpos[0].col
|
||||
+ (col == regmatch->endpos[0].col);
|
||||
if (col > (colnr_T)STRLEN(ml_get_buf(buf, lnum, FALSE)))
|
||||
if (col > ml_get_buf_len(buf, lnum))
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
char_u *str = ml_get_buf(buf, lnum, FALSE);
|
||||
int line_len = ml_get_buf_len(buf, lnum);
|
||||
int score;
|
||||
int_u matches[MAX_FUZZY_MATCHES];
|
||||
int_u sz = ARRAY_LENGTH(matches);
|
||||
@ -6241,7 +6242,7 @@ vgr_match_buflines(
|
||||
if ((flags & VGR_GLOBAL) == 0)
|
||||
break;
|
||||
col = matches[pat_len - 1] + col + 1;
|
||||
if (col > (colnr_T)STRLEN(str))
|
||||
if (col > line_len)
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user