patch 9.1.0913: no error check for neg values for 'messagesopt'
Problem: no error check for neg values for 'messagesopt'
(after v9.1.0908)
Solution: add additional error checks and tests (h-east)
closes: #16187
Signed-off-by: Shougo Matsushita <Shougo.Matsu@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/message.c b/src/message.c
index f0d1806..0fb0013 100644
--- a/src/message.c
+++ b/src/message.c
@@ -1133,12 +1133,10 @@
if (!(messages_flags_new & MESSAGES_HISTORY))
return FAIL;
- // "history" must be <= 10000
- if (messages_history_new > 10000)
+ if (messages_history_new < 0 || messages_history_new > 10000)
return FAIL;
- // "wait" must be <= 10000
- if (messages_wait_new > 10000)
+ if (messages_wait_new < 0 || messages_wait_new > 10000)
return FAIL;
msg_flags = messages_flags_new;
diff --git a/src/testdir/gen_opt_test.vim b/src/testdir/gen_opt_test.vim
index 74f5ae5..d1c721e 100644
--- a/src/testdir/gen_opt_test.vim
+++ b/src/testdir/gen_opt_test.vim
@@ -237,7 +237,9 @@
\ 'hit-enter,history:1,wait:1'],
\ ['xxx', 'history:500', 'hit-enter,history:-1',
\ 'hit-enter,history:10001', 'history:0,wait:10001',
- \ 'hit-enter']],
+ \ 'hit-enter', 'history:10,wait:99999999999999999999',
+ \ 'history:99999999999999999999,wait:10', 'wait:10',
+ \ 'history:-10', 'history:10,wait:-10']],
\ 'mkspellmem': [['10000,100,12'], ['', 'xxx', '10000,100']],
\ 'mouse': [['', 'n', 'v', 'i', 'c', 'h', 'a', 'r', 'nvi'],
\ ['xxx', 'n,v,i']],
diff --git a/src/version.c b/src/version.c
index 6dc9a47..1333d9d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 913,
+/**/
912,
/**/
911,