Explorar el Código

Fix issue with running plugin when help screen is shown

master
Arun Prakash Jana hace 5 años
padre
commit
f31fa09f56
Se han modificado 1 ficheros con 8 adiciones y 6 borrados
  1. +8
    -6
      src/nnn.c

+ 8
- 6
src/nnn.c Ver fichero

@@ -3375,6 +3375,8 @@ static void show_help(const char *path)
static bool plctrl_init(void)
{
snprintf(g_buf, CMD_LEN_MAX, "nnn-pipe.%d", getpid());
/* g_tmpfpath is used to generate tmp file names */
g_tmpfpath[g_tmpfplen - 1] = '\0';
mkpath(g_tmpfpath, g_buf, g_pipepath);
unlink(g_pipepath);
if (mkfifo(g_pipepath, 0600) != 0)
@@ -3395,9 +3397,8 @@ static bool run_selected_plugin(char **path, const char *file, char *newpath, ch
g_plinit = TRUE;
}

if ((cfg.runctx != cfg.curctx)
/* Must be in plugin directory to select plugin */
|| (!direct && strcmp(*path, plugindir) != 0))
/* Must be in plugin directory to select plugin */
if (!direct && ((cfg.runctx != cfg.curctx) || (strcmp(*path, plugindir) != 0)))
return FALSE;

fd = open(g_pipepath, O_RDONLY | O_NONBLOCK);
@@ -4972,12 +4973,13 @@ nochange:
spawn(newpath, (ndents ? dents[cur].name : NULL),
NULL, path, F_CLI | F_CONFIRM);
} else {
cfg.runctx = cfg.curctx;
if (!run_selected_plugin(&path, tmp, newpath, NULL,
(ndents ? dents[cur].name : NULL),
&lastname, &lastdir, TRUE))
&lastname, &lastdir, TRUE)) {
if (cfg.filtermode)
presel = FILTER;
goto nochange;

}
}
} else {
cfg.runplugin ^= 1;


Cargando…
Cancelar
Guardar