diff options
Diffstat (limited to 'src/cmd/rc/sys.c')
-rw-r--r-- | src/cmd/rc/sys.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/cmd/rc/sys.c b/src/cmd/rc/sys.c index a845122..9b6124b 100644 --- a/src/cmd/rc/sys.c +++ b/src/cmd/rc/sys.c @@ -3,14 +3,13 @@ // ----------------------------------------------------------------------- // internal -static -char** +static char** mkargv(Word *args) { char **argv=emalloc((count(args)+2)*sizeof(char *)); - char **argp=argv+1; /* leave one at front for runcoms */ + char **argp=argv+1; /* leave one at front for executable */ - for(;args;args=args->link) + for(; args; args=args->link) *argp++=args->str; *argp=nil; @@ -107,9 +106,11 @@ redirect(Redir *r) 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); } |