patch 9.1.1300: wrong detection of -inf
Problem: wrong detection of -inf
Solution: correctly compare 4 characters and not 3
(John Marriott)
closes: #17109
Signed-off-by: John Marriott <basilisk@internode.on.net>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/float.c b/src/float.c
index 9e8074d..4c8e5fe 100644
--- a/src/float.c
+++ b/src/float.c
@@ -41,7 +41,7 @@
*value = INFINITY;
return 3;
}
- if (STRNICMP(text, "-inf", 3) == 0)
+ if (STRNICMP(text, "-inf", 4) == 0)
{
*value = -INFINITY;
return 4;
diff --git a/src/testdir/test_viminfo.vim b/src/testdir/test_viminfo.vim
index 7aab271..2bbca3e 100644
--- a/src/testdir/test_viminfo.vim
+++ b/src/testdir/test_viminfo.vim
@@ -1329,4 +1329,30 @@
let &viminfofile = _viminfofile
endfunc
+func Test_viminfo_global_var()
+ let _viminfofile = &viminfofile
+ let _viminfo = &viminfo
+ let &viminfofile=''
+ set viminfo+=!
+ let lines = [
+ \ '# comment line',
+ \ "",
+ \ '# Viminfo version',
+ \ '|1,4',
+ \ "",
+ \ '*encoding=utf-8',
+ \ "",
+ \ '# global variables:',
+ \ "!VAL\tFLO\t-in",
+ \ "!VAR\tFLO\t-inf",
+ \ "",
+ \ ]
+ call writefile(lines, 'Xviminfo2', 'D')
+ rviminfo! Xviminfo2
+ call assert_equal(0.0, g:VAL)
+ call assert_equal(str2float("-inf"), g:VAR)
+ let &viminfofile = _viminfofile
+ let &viminfo = _viminfo
+endfunc
+
" vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index e4a0b0e..0a5b4ec 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1300,
+/**/
1299,
/**/
1298,