mirror of
https://github.com/jarun/nnn.git
synced 2024-11-17 16:39:14 +00:00
Concatenate arguments to pass to sh
Co-authored-by: KlzXS <klzx+github@klzx.cf> Co-authored-by: Arun Prakash Jana <engineerarun@gmail.com>
This commit is contained in:
parent
8a1e32d9eb
commit
428c652d36
19
src/nnn.c
19
src/nnn.c
|
@ -4490,12 +4490,29 @@ static bool get_output(char *file, char *arg1, char *arg2, int fdout, bool page)
|
|||
pid = fork();
|
||||
if (pid == 0) {
|
||||
/* In child */
|
||||
char *bufptr = file;
|
||||
|
||||
close(cmd_in_fd);
|
||||
dup2(cmd_out_fd, STDOUT_FILENO);
|
||||
dup2(cmd_out_fd, STDERR_FILENO);
|
||||
close(cmd_out_fd);
|
||||
|
||||
spawn(utils[UTIL_SH_EXEC], file, arg1, arg2, F_MULTI);
|
||||
if (bufptr && arg1) {
|
||||
char argbuf[CMD_LEN_MAX];
|
||||
|
||||
len = xstrsncpy(argbuf, file, xstrlen(file) + 1);
|
||||
argbuf[len - 1] = ' ';
|
||||
bufptr = argbuf + len;
|
||||
len = xstrsncpy(bufptr, arg1, xstrlen(arg1) + 1);
|
||||
if (arg2) {
|
||||
bufptr[len - 1] = ' ';
|
||||
xstrsncpy(bufptr + len, arg2, xstrlen(arg2) + 1);
|
||||
}
|
||||
|
||||
bufptr = argbuf;
|
||||
}
|
||||
|
||||
spawn(utils[UTIL_SH_EXEC], bufptr, NULL, NULL, F_MULTI);
|
||||
_exit(EXIT_SUCCESS);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue