forked from aniani/vim
patch 8.2.0378: prop_find() does not find all props
Problem: prop_find() does not find all props. Solution: Check being in the start line. (Axel Forsman, closes #5776)
This commit is contained in:
@@ -213,6 +213,17 @@ func Test_prop_find()
|
|||||||
call prop_type_delete('prop_name')
|
call prop_type_delete('prop_name')
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_prop_find_smaller_len_than_match_col()
|
||||||
|
new
|
||||||
|
call prop_type_add('test', {'highlight': 'ErrorMsg'})
|
||||||
|
call setline(1, ['xxxx', 'x'])
|
||||||
|
call prop_add(1, 4, {'type': 'test'})
|
||||||
|
call assert_equal({'id': 0, 'lnum': 1, 'col': 4, 'type': 'test', 'length': 0, 'start': 1, 'end': 1},
|
||||||
|
\ prop_find({'type': 'test', 'lnum': 2, 'col': 1}, 'b'))
|
||||||
|
bwipe!
|
||||||
|
call prop_type_delete('test')
|
||||||
|
endfunc
|
||||||
|
|
||||||
func Test_prop_add()
|
func Test_prop_add()
|
||||||
new
|
new
|
||||||
call AddPropTypes()
|
call AddPropTypes()
|
||||||
|
@@ -663,13 +663,14 @@ f_prop_find(typval_T *argvars, typval_T *rettv)
|
|||||||
mch_memmove(&prop, text + textlen + i * sizeof(textprop_T),
|
mch_memmove(&prop, text + textlen + i * sizeof(textprop_T),
|
||||||
sizeof(textprop_T));
|
sizeof(textprop_T));
|
||||||
|
|
||||||
if (dir < 0)
|
if (lnum == lnum_start)
|
||||||
{
|
if (dir < 0)
|
||||||
if (col < prop.tp_col)
|
{
|
||||||
break;
|
if (col < prop.tp_col)
|
||||||
}
|
break;
|
||||||
else if (prop.tp_col + prop.tp_len - (prop.tp_len != 0) < col)
|
}
|
||||||
continue;
|
else if (prop.tp_col + prop.tp_len - (prop.tp_len != 0) < col)
|
||||||
|
continue;
|
||||||
|
|
||||||
if (prop.tp_id == id || prop.tp_type == type_id)
|
if (prop.tp_id == id || prop.tp_type == type_id)
|
||||||
{
|
{
|
||||||
|
@@ -738,6 +738,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 */
|
||||||
|
/**/
|
||||||
|
378,
|
||||||
/**/
|
/**/
|
||||||
377,
|
377,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user