aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/rc/sys.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/rc/sys.c')
-rw-r--r--src/cmd/rc/sys.c32
1 files changed, 16 insertions, 16 deletions
diff --git a/src/cmd/rc/sys.c b/src/cmd/rc/sys.c
index 807359d..a845122 100644
--- a/src/cmd/rc/sys.c
+++ b/src/cmd/rc/sys.c
@@ -94,24 +94,24 @@ execute(Word *cmd, Word *path)
void
redirect(Redir *r)
{
- if(r){
- redirect(r->link);
- switch(r->type){
- case Ropen:
- if(r->from != r->to){
- dup2(r->from, r->to);
- close(r->from);
- }
- break;
- case Rdupfd:
- dup2(r->from, r->to); // TODO: error checking
- break;
- case Rclose:
+ if(!r) return;
+ redirect(r->link);
+
+ switch(r->type){
+ case Ropen:
+ if(r->from != r->to){
+ dup2(r->from, r->to);
close(r->from);
- break;
- default:
- fatal("unrecognized redirection type %d\n", r->type);
}
+ break;
+ case Rdup:
+ dup2(r->from, r->to); // TODO: error checking
+ break;
+ case Rclose:
+ close(r->from);
+ break;
+ default:
+ fatal("unrecognized redirection type %d\n", r->type);
}
}