1
0
forked from aniani/vim

patch 8.2.3272: cannot use id zero with prop_find()

Problem:    Cannot use id zero with prop_find(). (Naohiro Ono)
Solution:   Also accept id zero.
This commit is contained in:
Bram Moolenaar
2021-08-01 21:30:12 +02:00
parent e4db17fb6e
commit e041dde7bb
3 changed files with 12 additions and 4 deletions

View File

@@ -239,12 +239,18 @@ func Test_prop_find()
let result = prop_find({'type': 'prop_name', 'lnum': 1}, 'f')
call assert_equal(expected[0], result)
" When ID is -1 it's like prop is not found.
" Negative ID is possible, just like prop is not found.
call assert_equal({}, prop_find({'id': -1}))
call assert_equal({}, prop_find({'id': -2}))
call prop_clear(1, 6)
" Default ID is zero
call prop_add(5, 4, {'type': 'prop_name', 'length': 1})
call assert_equal(#{lnum: 5, id: 0, col: 4, type_bufnr: 0, end: 1, type: 'prop_name', length: 1, start: 1}, prop_find({'id': 0}))
call prop_clear(1,6)
call prop_type_delete('prop_name')
call prop_clear(1, 6)
bwipe!
endfunc

View File

@@ -689,7 +689,7 @@ f_prop_find(typval_T *argvars, typval_T *rettv)
if (dict_find(dict, (char_u *)"id", -1) != NULL)
{
id = dict_get_number(dict, (char_u *)"id");
id_found = id != 0;
id_found = TRUE;
}
if (dict_find(dict, (char_u *)"type", -1))
{

View File

@@ -755,6 +755,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
3272,
/**/
3271,
/**/