Patch 8.2.2309
Problem: 0o777 not recognized as octal.
Solution: Use vim_isodigit(). (Ken Takata, closes #7633, closes #7631)
Files: src/charset.c, src/testdir/test_eval_stuff.vim
*** ../vim-8.2.2308/src/charset.c 2020-06-10 14:16:30.098988403 +0200
--- src/charset.c 2021-01-07 19:35:06.364923862 +0100
***************
*** 1594,1599 ****
--- 1594,1605 ----
return (c == '0' || c == '1');
}
+ static int
+ vim_isodigit(int c)
+ {
+ return (c >= '0' && c <= '7');
+ }
+
/*
* Vim's own character class functions. These exist because many library
* islower()/toupper() etc. do not work properly: they crash when used with
***************
*** 1831,1837 ****
// binary
ptr += 2;
else if ((what & STR2NR_OOCT)
! && (pre == 'O' || pre == 'o') && vim_isbdigit(ptr[2])
&& (maxlen == 0 || maxlen > 2))
// octal with prefix "0o"
ptr += 2;
--- 1837,1843 ----
// binary
ptr += 2;
else if ((what & STR2NR_OOCT)
! && (pre == 'O' || pre == 'o') && vim_isodigit(ptr[2])
&& (maxlen == 0 || maxlen > 2))
// octal with prefix "0o"
ptr += 2;
*** ../vim-8.2.2308/src/testdir/test_eval_stuff.vim 2020-09-04
21:18:40.480161935 +0200
--- src/testdir/test_eval_stuff.vim 2021-01-07 19:32:14.605319230 +0100
***************
*** 218,223 ****
--- 218,224 ----
call assert_equal(15, 0o17)
call assert_equal(15, 0O17)
call assert_equal(18, 018)
+ call assert_equal(511, 0o777)
call assert_equal(64, 0b1'00'00'00)
call assert_equal(1048576, 0x10'00'00)
call assert_equal(32768, 0o10'00'00)
***************
*** 233,238 ****
--- 234,240 ----
call assert_equal(15, 0o17)
call assert_equal(15, 0O17)
call assert_equal(18, 018)
+ call assert_equal(511, 0o777)
endfunc
func Test_scriptversion_fail()
*** ../vim-8.2.2308/src/version.c 2021-01-07 19:23:04.970566910 +0100
--- src/version.c 2021-01-07 19:36:16.508761971 +0100
***************
*** 752,753 ****
--- 752,755 ----
{ /* Add new patch number below this line */
+ /**/
+ 2309,
/**/
--
To be rich is not the end, but only a change of worries.
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/vim_dev/202101071837.107Ib8lb619116%40masaka.moolenaar.net.