diff options
Diffstat (limited to 'lib/libc/gen/popen.c')
-rw-r--r-- | lib/libc/gen/popen.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/lib/libc/gen/popen.c b/lib/libc/gen/popen.c index c744efd..7939b8f 100644 --- a/lib/libc/gen/popen.c +++ b/lib/libc/gen/popen.c @@ -85,8 +85,8 @@ popen(command, type) return (NULL); if ((cur = malloc(sizeof(struct pid))) == NULL) { - (void)_libc_close(pdes[0]); - (void)_libc_close(pdes[1]); + (void)_close(pdes[0]); + (void)_close(pdes[1]); return (NULL); } @@ -97,8 +97,8 @@ popen(command, type) switch (pid = vfork()) { case -1: /* Error. */ - (void)_libc_close(pdes[0]); - (void)_libc_close(pdes[1]); + (void)_close(pdes[0]); + (void)_close(pdes[1]); free(cur); return (NULL); /* NOTREACHED */ @@ -112,10 +112,10 @@ popen(command, type) * the compiler is free to corrupt all the local * variables. */ - (void)_libc_close(pdes[0]); + (void)_close(pdes[0]); if (pdes[1] != STDOUT_FILENO) { (void)dup2(pdes[1], STDOUT_FILENO); - (void)_libc_close(pdes[1]); + (void)_close(pdes[1]); if (twoway) (void)dup2(STDOUT_FILENO, STDIN_FILENO); } else if (twoway && (pdes[1] != STDIN_FILENO)) @@ -123,12 +123,12 @@ popen(command, type) } else { if (pdes[0] != STDIN_FILENO) { (void)dup2(pdes[0], STDIN_FILENO); - (void)_libc_close(pdes[0]); + (void)_close(pdes[0]); } - (void)_libc_close(pdes[1]); + (void)_close(pdes[1]); } for (p = pidlist; p; p = p->next) { - (void)_libc_close(fileno(p->fp)); + (void)_close(fileno(p->fp)); } execve(_PATH_BSHELL, argv, environ); _exit(127); @@ -138,10 +138,10 @@ popen(command, type) /* Parent; assume fdopen can't fail. */ if (*type == 'r') { iop = fdopen(pdes[0], type); - (void)_libc_close(pdes[1]); + (void)_close(pdes[1]); } else { iop = fdopen(pdes[1], type); - (void)_libc_close(pdes[0]); + (void)_close(pdes[0]); } /* Link into list of file descriptors. */ @@ -177,7 +177,7 @@ pclose(iop) (void)fclose(iop); do { - pid = _libc_waitpid(cur->pid, &pstat, 0); + pid = _wait4(cur->pid, &pstat, 0, (struct rusage *)0); } while (pid == -1 && errno == EINTR); /* Remove the entry from the linked list. */ |