fix popen not to leak pipes from one child to another
[musl] / src / misc / getopt.c
index cd1f292..c3f6699 100644 (file)
@@ -1,10 +1,11 @@
+#define _BSD_SOURCE
 #include <unistd.h>
 #include <wchar.h>
 #include <string.h>
 #include <limits.h>
 #include <stdlib.h>
-#include "libc.h"
 #include "locale_impl.h"
+#include "stdio_impl.h"
 
 char *optarg;
 int optind=1, opterr=1, optopt, __optpos, __optreset=0;
@@ -16,12 +17,12 @@ void __getopt_msg(const char *a, const char *b, const char *c, size_t l)
 {
        FILE *f = stderr;
        b = __lctrans_cur(b);
-       flockfile(f);
+       FLOCK(f);
        fputs(a, f)>=0
        && fwrite(b, strlen(b), 1, f)
        && fwrite(c, 1, l, f)==l
        && putc('\n', f);
-       funlockfile(f);
+       FUNLOCK(f);
 }
 
 int getopt(int argc, char * const argv[], const char *optstring)