summaryrefslogtreecommitdiffstats
path: root/process.c
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-12-03 12:33:37 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-12-03 12:33:37 +0000
commitb1edd6fef9c4336d4a4ac4adeac0ee1fd93ac1ca (patch)
treec70306a9a8d2aaa282d4c082429a1b3f594269a5 /process.c
parentfe4a2bc3dfe7c1a72caa1c25155549e2edd55510 (diff)
downloadruby-b1edd6fef9c4336d4a4ac4adeac0ee1fd93ac1ca.tar.gz
ruby-b1edd6fef9c4336d4a4ac4adeac0ee1fd93ac1ca.tar.xz
ruby-b1edd6fef9c4336d4a4ac4adeac0ee1fd93ac1ca.zip
* process.c (check_exec_redirect): accept :in, :out, :err as redirect
target. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'process.c')
-rw-r--r--process.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/process.c b/process.c
index 517b4867b..35829da5c 100644
--- a/process.c
+++ b/process.c
@@ -1259,6 +1259,18 @@ check_exec_redirect(VALUE key, VALUE val, VALUE options)
index = EXEC_OPTION_CLOSE;
param = Qnil;
}
+ else if (id == rb_intern("in")) {
+ index = EXEC_OPTION_DUP2;
+ param = INT2FIX(0);
+ }
+ else if (id == rb_intern("out")) {
+ index = EXEC_OPTION_DUP2;
+ param = INT2FIX(1);
+ }
+ else if (id == rb_intern("err")) {
+ index = EXEC_OPTION_DUP2;
+ param = INT2FIX(2);
+ }
else {
rb_raise(rb_eArgError, "wrong exec redirect symbol: %s",
rb_id2name(id));