summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-03-19 14:37:30 +0100
committerBram Moolenaar <Bram@vim.org>2020-03-19 14:37:30 +0100
commit2d10cd478047df8ba144d4b0fcc46480993af57f (patch)
tree516b015ce0b2d408d32a8ec4fe99ed38c44684e5
parente32848780cc07c368ba2e088cdefdbb8c3b827c2 (diff)
patch 8.2.0407: no early check if :find and :sfind have an argumentv8.2.0407
Problem: No early check if :find and :sfind have an argument. Solution: Add EX_NEEDARG.
-rw-r--r--src/ex_cmds.h4
-rw-r--r--src/testdir/test_find_complete.vim8
-rw-r--r--src/testdir/test_findfile.vim4
-rw-r--r--src/version.c2
4 files changed, 12 insertions, 6 deletions
diff --git a/src/ex_cmds.h b/src/ex_cmds.h
index f09fb3bffa..2e35c8d5f0 100644
--- a/src/ex_cmds.h
+++ b/src/ex_cmds.h
@@ -584,7 +584,7 @@ EXCMD(CMD_filter, "filter", ex_wrongmodifier,
EX_BANG|EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM,
ADDR_NONE),
EXCMD(CMD_find, "find", ex_find,
- EX_RANGE|EX_BANG|EX_FILE1|EX_CMDARG|EX_ARGOPT|EX_TRLBAR,
+ EX_RANGE|EX_BANG|EX_FILE1|EX_CMDARG|EX_ARGOPT|EX_TRLBAR|EX_NEEDARG,
ADDR_OTHER),
EXCMD(CMD_finally, "finally", ex_finally,
EX_TRLBAR|EX_SBOXOK|EX_CMDWIN,
@@ -1334,7 +1334,7 @@ EXCMD(CMD_setlocal, "setlocal", ex_set,
EX_BANG|EX_TRLBAR|EX_EXTRA|EX_CMDWIN|EX_SBOXOK,
ADDR_NONE),
EXCMD(CMD_sfind, "sfind", ex_splitview,
- EX_BANG|EX_FILE1|EX_RANGE|EX_CMDARG|EX_ARGOPT|EX_TRLBAR,
+ EX_BANG|EX_FILE1|EX_RANGE|EX_CMDARG|EX_ARGOPT|EX_TRLBAR|EX_NEEDARG,
ADDR_OTHER),
EXCMD(CMD_sfirst, "sfirst", ex_rewind,
EX_EXTRA|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR,
diff --git a/src/testdir/test_find_complete.vim b/src/testdir/test_find_complete.vim
index 679bf3c200..32ca9672ef 100644
--- a/src/testdir/test_find_complete.vim
+++ b/src/testdir/test_find_complete.vim
@@ -15,22 +15,22 @@ func Test_find_complete()
new
set path=
- call assert_fails('call feedkeys(":find\t\n", "xt")', 'E345:')
+ call assert_fails('call feedkeys(":find \t\n", "xt")', 'E471:')
close
new
set path=.
- call assert_fails('call feedkeys(":find\t\n", "xt")', 'E32:')
+ call assert_fails('call feedkeys(":find \t\n", "xt")', 'E471:')
close
new
set path=.,,
- call assert_fails('call feedkeys(":find\t\n", "xt")', 'E32:')
+ call assert_fails('call feedkeys(":find \t\n", "xt")', 'E471:')
close
new
set path=./**
- call assert_fails('call feedkeys(":find\t\n", "xt")', 'E32:')
+ call assert_fails('call feedkeys(":find \t\n", "xt")', 'E471:')
close
" We shouldn't find any file till this point
diff --git a/src/testdir/test_findfile.vim b/src/testdir/test_findfile.vim
index ac6d8637b8..44c8982998 100644
--- a/src/testdir/test_findfile.vim
+++ b/src/testdir/test_findfile.vim
@@ -222,4 +222,8 @@ func Test_find_cmd()
call CleanFiles()
let &path = save_path
close
+
+ call assert_fails('find', 'E471:')
+ call assert_fails('sfind', 'E471:')
+ call assert_fails('tabfind', 'E471:')
endfunc
diff --git a/src/version.c b/src/version.c
index f90a427805..507ce77756 100644
--- a/src/version.c
+++ b/src/version.c
@@ -739,6 +739,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 407,
+/**/
406,
/**/
405,