Index: fusl/src/stdio/pclose.c |
diff --git a/fusl/src/stdio/pclose.c b/fusl/src/stdio/pclose.c |
new file mode 100644 |
index 0000000000000000000000000000000000000000..080a426245b67be80d5066a539d2b6fabcf20b4f |
--- /dev/null |
+++ b/fusl/src/stdio/pclose.c |
@@ -0,0 +1,13 @@ |
+#include "stdio_impl.h" |
+#include <errno.h> |
+#include <unistd.h> |
+ |
+int pclose(FILE *f) |
+{ |
+ int status, r; |
+ pid_t pid = f->pipe_pid; |
+ fclose(f); |
+ while ((r=__syscall(SYS_wait4, pid, &status, 0, 0)) == -EINTR); |
+ if (r<0) return __syscall_ret(r); |
+ return status; |
+} |