Browse Source

run-command: convert simple callsites to use_shell

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>
maint
Jeff King 15 years ago committed by Junio C Hamano
parent
commit
ac0ba18df0
  1. 3
      convert.c
  2. 8
      imap-send.c
  3. 6
      ll-merge.c
  4. 5
      pager.c

3
convert.c

@ -249,10 +249,11 @@ static int filter_buffer(int fd, void *data) @@ -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;


8
imap-send.c

@ -965,17 +965,13 @@ static struct store *imap_open_store(struct imap_server_conf *srvc) @@ -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))

6
ll-merge.c

@ -175,7 +175,7 @@ static int ll_ext_merge(const struct ll_merge_driver *fn, @@ -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;

@ -190,8 +190,8 @@ static int ll_ext_merge(const struct ll_merge_driver *fn, @@ -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;

5
pager.c

@ -28,7 +28,7 @@ static void pager_preexec(void) @@ -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)
@ -81,7 +81,8 @@ void setup_pager(void) @@ -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")) {

Loading…
Cancel
Save