OLD | NEW |
1 #include "stdio_impl.h" | 1 #include "stdio_impl.h" |
2 #include <errno.h> | 2 #include <errno.h> |
3 #include <unistd.h> | 3 #include <unistd.h> |
4 | 4 |
5 int pclose(FILE *f) | 5 int pclose(FILE* f) { |
6 { | 6 int status, r; |
7 » int status, r; | 7 pid_t pid = f->pipe_pid; |
8 » pid_t pid = f->pipe_pid; | 8 fclose(f); |
9 » fclose(f); | 9 while ((r = __syscall(SYS_wait4, pid, &status, 0, 0)) == -EINTR) |
10 » while ((r=__syscall(SYS_wait4, pid, &status, 0, 0)) == -EINTR); | 10 ; |
11 » if (r<0) return __syscall_ret(r); | 11 if (r < 0) |
12 » return status; | 12 return __syscall_ret(r); |
| 13 return status; |
13 } | 14 } |
OLD | NEW |