Skip to content

Commit

Permalink
run-command: convert simple callsites to use_shell
Browse files Browse the repository at this point in the history
Now that we have the use_shell feature, these callsites can
all be converted with small changes.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Jeff King authored and Junio C Hamano committed Jan 6, 2010
1 parent fa7151a commit ac0ba18
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 12 deletions.
3 changes: 2 additions & 1 deletion convert.c
Original file line number Diff line number Diff line change
Expand Up @@ -249,10 +249,11 @@ static int filter_buffer(int fd, void *data)
struct child_process child_process;
struct filter_params *params = (struct filter_params *)data;
int write_err, status;
const char *argv[] = { "sh", "-c", params->cmd, NULL };
const char *argv[] = { params->cmd, NULL };

memset(&child_process, 0, sizeof(child_process));
child_process.argv = argv;
child_process.use_shell = 1;
child_process.in = -1;
child_process.out = fd;

Expand Down
8 changes: 2 additions & 6 deletions imap-send.c
Original file line number Diff line number Diff line change
Expand Up @@ -965,17 +965,13 @@ static struct store *imap_open_store(struct imap_server_conf *srvc)
/* open connection to IMAP server */

if (srvc->tunnel) {
const char *argv[4];
const char *argv[] = { srvc->tunnel, NULL };
struct child_process tunnel = {0};

imap_info("Starting tunnel '%s'... ", srvc->tunnel);

argv[0] = "sh";
argv[1] = "-c";
argv[2] = srvc->tunnel;
argv[3] = NULL;

tunnel.argv = argv;
tunnel.use_shell = 1;
tunnel.in = -1;
tunnel.out = -1;
if (start_command(&tunnel))
Expand Down
6 changes: 3 additions & 3 deletions ll-merge.c
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ static int ll_ext_merge(const struct ll_merge_driver *fn,
{ "B", temp[2] },
{ NULL }
};
const char *args[] = { "sh", "-c", NULL, NULL };
const char *args[] = { NULL, NULL };
int status, fd, i;
struct stat st;

Expand All @@ -190,8 +190,8 @@ static int ll_ext_merge(const struct ll_merge_driver *fn,

strbuf_expand(&cmd, fn->cmdline, strbuf_expand_dict_cb, &dict);

args[2] = cmd.buf;
status = run_command_v_opt(args, 0);
args[0] = cmd.buf;
status = run_command_v_opt(args, RUN_USING_SHELL);
fd = open(temp[1], O_RDONLY);
if (fd < 0)
goto bad;
Expand Down
5 changes: 3 additions & 2 deletions pager.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ static void pager_preexec(void)
}
#endif

static const char *pager_argv[] = { "sh", "-c", NULL, NULL };
static const char *pager_argv[] = { NULL, NULL };
static struct child_process pager_process;

static void wait_for_pager(void)
Expand Down Expand Up @@ -81,7 +81,8 @@ void setup_pager(void)
spawned_pager = 1; /* means we are emitting to terminal */

/* spawn the pager */
pager_argv[2] = pager;
pager_argv[0] = pager;
pager_process.use_shell = 1;
pager_process.argv = pager_argv;
pager_process.in = -1;
if (!getenv("LESS")) {
Expand Down

0 comments on commit ac0ba18

Please sign in to comment.