aboutsummaryrefslogtreecommitdiff
path: root/vis-cmds.c
diff options
context:
space:
mode:
authorMarc André Tanner <mat@brain-dump.org>2016-04-01 23:41:28 +0200
committerMarc André Tanner <mat@brain-dump.org>2016-04-01 23:41:28 +0200
commitba23d97ef69e9c913775d037b58beb66b5b1384c (patch)
tree65680dbbf11c2ab5032a9f81d634e5ee01fd14de /vis-cmds.c
parente2f4b5bd6e9d8cba940074e9959d6cebf496132a (diff)
downloadvis-ba23d97ef69e9c913775d037b58beb66b5b1384c.tar.gz
vis-ba23d97ef69e9c913775d037b58beb66b5b1384c.tar.xz
vis: cleanup vis_pipe API
Diffstat (limited to 'vis-cmds.c')
-rw-r--r--vis-cmds.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/vis-cmds.c b/vis-cmds.c
index a86e034..bb90e35 100644
--- a/vis-cmds.c
+++ b/vis-cmds.c
@@ -700,10 +700,10 @@ int vis_pipe(Vis *vis, void *context, Filerange *range, const char *argv[],
dup2(perr[1], STDERR_FILENO);
close(perr[0]);
close(perr[1]);
- if (!argv[2])
- execl("/bin/sh", "sh", "-c", argv[1], NULL);
+ if (!argv[1])
+ execl("/bin/sh", "sh", "-c", argv[0], NULL);
else
- execvp(argv[1], (char**)argv+1);
+ execvp(argv[0], (char* const*)argv);
vis_info_show(vis, "exec failure: %s", strerror(errno));
exit(EXIT_FAILURE);
}
@@ -848,7 +848,7 @@ static bool cmd_filter(Vis *vis, Filerange *range, enum CmdOpt opt, const char *
text_snapshot(txt);
- int status = vis_pipe(vis, &filter, range, argv, read_stdout, read_stderr);
+ int status = vis_pipe(vis, &filter, range, &argv[1], read_stdout, read_stderr);
if (status == 0) {
if (text_range_valid(range)) {
@@ -902,7 +902,7 @@ static bool cmd_pipe(Vis *vis, Filerange *range, enum CmdOpt opt, const char *ar
buffer_init(&filter.err);
- int status = vis_pipe(vis, &filter, range, argv, read_stdout_new, read_stderr);
+ int status = vis_pipe(vis, &filter, range, &argv[1], read_stdout_new, read_stderr);
if (vis->cancel_filter)
vis_info_show(vis, "Command cancelled");