patch 8.2.3257: calling prop_find() with -1 for ID gives errornous error
Problem: Calling prop_find() with -1 for ID gives errornous error. (Naohiro
Ono)
Solution: When passing -1 use -2. (closes #8674)
diff --git a/src/testdir/test_textprop.vim b/src/testdir/test_textprop.vim
index 78dd202..0ac4e89 100644
--- a/src/testdir/test_textprop.vim
+++ b/src/testdir/test_textprop.vim
@@ -239,6 +239,9 @@
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.
+ call assert_equal({}, prop_find({'id': -1}))
+
call prop_clear(1,6)
call prop_type_delete('prop_name')
diff --git a/src/textprop.c b/src/textprop.c
index 92dc645..bc27aef 100644
--- a/src/textprop.c
+++ b/src/textprop.c
@@ -686,7 +686,11 @@
skipstart = dict_get_bool(dict, (char_u *)"skipstart", 0);
if (dict_find(dict, (char_u *)"id", -1) != NULL)
+ {
id = dict_get_number(dict, (char_u *)"id");
+ if (id == -1)
+ id = -2;
+ }
if (dict_find(dict, (char_u *)"type", -1))
{
char_u *name = dict_get_string(dict, (char_u *)"type", FALSE);
diff --git a/src/version.c b/src/version.c
index 2ef5237..917e001 100644
--- a/src/version.c
+++ b/src/version.c
@@ -756,6 +756,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 3257,
+/**/
3256,
/**/
3255,