diff options
-rw-r--r-- | src/channel.c | 5 | ||||
-rw-r--r-- | src/testdir/test_channel.vim | 2 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/src/channel.c b/src/channel.c index f1c2ccd338..ebbc315cc7 100644 --- a/src/channel.c +++ b/src/channel.c @@ -5921,7 +5921,7 @@ job_start( { // Command is a string. cmd = argvars[0].vval.v_string; - if (cmd == NULL || *cmd == NUL) + if (cmd == NULL || *skipwhite(cmd) == NUL) { emsg(_(e_invarg)); goto theend; @@ -5945,13 +5945,12 @@ job_start( goto theend; // Empty command is invalid. -#ifdef USE_ARGV if (argc == 0 || *skipwhite((char_u *)argv[0]) == NUL) { emsg(_(e_invarg)); goto theend; } -#else +#ifndef USE_ARGV if (win32_build_cmd(l, &ga) == FAIL) goto theend; cmd = ga.ga_data; diff --git a/src/testdir/test_channel.vim b/src/testdir/test_channel.vim index a7c40098d8..4dac7aaef8 100644 --- a/src/testdir/test_channel.vim +++ b/src/testdir/test_channel.vim @@ -1962,6 +1962,8 @@ func Test_empty_job() " This was crashing on MS-Windows. call assert_fails('let job = job_start([""])', 'E474:') call assert_fails('let job = job_start([" "])', 'E474:') + call assert_fails('let job = job_start("")', 'E474:') + call assert_fails('let job = job_start(" ")', 'E474:') endfunc " Do this last, it stops any channel log. diff --git a/src/version.c b/src/version.c index 7e9f4a57cd..88ea9247d3 100644 --- a/src/version.c +++ b/src/version.c @@ -743,6 +743,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 32, +/**/ 31, /**/ 30, |