From c8d5e9230ee3ddc530ddb251fbe11e3b02293c80 Mon Sep 17 00:00:00 2001 From: Aaron Williamson Date: Thu, 24 Nov 2016 17:23:54 -0700 Subject: jobstart(): Return -1 if cmd is not executable. #5671 Closes #5465 --- src/nvim/eval.c | 5 ++--- src/nvim/globals.h | 1 - 2 files changed, 2 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/nvim/eval.c b/src/nvim/eval.c index ba5864fe3b..a791fea663 100644 --- a/src/nvim/eval.c +++ b/src/nvim/eval.c @@ -11608,9 +11608,6 @@ static char **tv_to_argv(typval_T *cmd_tv, char **cmd) const char_u *exe = get_tv_string_chk(&argl->lv_first->li_tv); if (!exe || !os_can_exe(exe, NULL, true)) { // String is not executable - if (exe) { - EMSG2(e_jobexe, exe); - } return NULL; } @@ -11646,6 +11643,7 @@ static void f_jobstart(typval_T *argvars, typval_T *rettv, FunPtr fptr) char **argv = tv_to_argv(&argvars[0], NULL); if (!argv) { + rettv->vval.v_number = -1; // Return -1 on error. return; // Did error message in tv_to_argv. } @@ -16470,6 +16468,7 @@ static void f_termopen(typval_T *argvars, typval_T *rettv, FunPtr fptr) char *cmd; char **argv = tv_to_argv(&argvars[0], &cmd); if (!argv) { + rettv->vval.v_number = -1; // Return -1 on error. return; // Did error message in tv_to_argv. } diff --git a/src/nvim/globals.h b/src/nvim/globals.h index f81fb43eaf..acdda9b657 100644 --- a/src/nvim/globals.h +++ b/src/nvim/globals.h @@ -1125,7 +1125,6 @@ EXTERN char_u e_invcmd[] INIT(= N_("E476: Invalid command")); EXTERN char_u e_isadir2[] INIT(= N_("E17: \"%s\" is a directory")); EXTERN char_u e_invjob[] INIT(= N_("E900: Invalid job id")); EXTERN char_u e_jobtblfull[] INIT(= N_("E901: Job table is full")); -EXTERN char_u e_jobexe[] INIT(= N_("E902: \"%s\" is not an executable")); EXTERN char_u e_jobspawn[] INIT(= N_( "E903: Process for command \"%s\" could not be spawned")); EXTERN char_u e_jobnotpty[] INIT(= N_("E904: Job is not connected to a pty")); -- cgit