From 53b17a769b873a889c15c4cf4d34e9a58a03b552 Mon Sep 17 00:00:00 2001 From: akr Date: Tue, 5 Jun 2012 14:53:31 +0000 Subject: * internal.h (rb_exec_arg): use union to represent command invocation with/without shell. * process.c: follow the rb_exec_arg change. * io.c (pipe_open): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- internal.h | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'internal.h') diff --git a/internal.h b/internal.h index a552923623..05e855df00 100644 --- a/internal.h +++ b/internal.h @@ -160,13 +160,19 @@ st_index_t rb_hash_proc(st_index_t hash, VALUE proc); /* process.c */ struct rb_exec_arg { - const char *prog; + int use_shell; + union { + struct { + VALUE shell_script; + } sh; + struct { + VALUE command_name; + VALUE argv_str; + VALUE argv_buf; + } cmd; + } invoke; VALUE options; VALUE redirect_fds; - VALUE progname; - int use_shell; - VALUE argv_str; - VALUE argv_buf; VALUE envp_str; VALUE envp_buf; VALUE dup2_tmpbuf; -- cgit v1.2.3