diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/nnn.c | 10 | ||||
-rw-r--r-- | src/nnn.h | 4 |
2 files changed, 10 insertions, 4 deletions
@@ -3372,8 +3372,8 @@ nochange: xstrlcpy(lastname, tmp, NAME_MAX + 1); goto begin; case SEL_SHELL: // fallthrough - case SEL_RUNSCRIPT: - if (sel == SEL_RUNSCRIPT) { + case SEL_SCRIPT: + if (sel == SEL_SCRIPT) { tmp = getenv("NNN_SCRIPT"); if (tmp) { if (getenv("NNN_MULTISCRIPT")) { @@ -3385,6 +3385,12 @@ nochange: tmp = newpath; } + /* Check if file exists */ + if (access(tmp, F_OK) == -1) { + printwarn(); + goto nochange; + } + dir = NULL; /* dir used as temp var */ if (ndents) dir = dents[cur].name; @@ -81,7 +81,7 @@ enum action { SEL_RENAMEALL, SEL_HELP, SEL_SHELL, - SEL_RUNSCRIPT, + SEL_SCRIPT, SEL_RUNEDIT, SEL_RUNPAGE, SEL_LOCK, @@ -213,7 +213,7 @@ static struct key bindings[] = { { '!', SEL_SHELL }, { CONTROL(']'), SEL_SHELL }, /* Run a custom script */ - { 'R', SEL_RUNSCRIPT }, + { 'R', SEL_SCRIPT }, /* Run command with argument */ { 'e', SEL_RUNEDIT }, { 'p', SEL_RUNPAGE }, |