diff options
author | Rich Felker <dalias@aerifal.cx> | 2018-09-10 23:04:42 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2018-09-12 14:34:33 -0400 |
commit | cf7db2427f99d784f3d27a4036c1abf41c61db87 (patch) | |
tree | 6e8deaa6c1e28dd8ab3615d9de4aa316e7b7dd3b | |
parent | 7ab1578d05f5d6790e218867158a28d9147419ec (diff) | |
download | musl-cf7db2427f99d784f3d27a4036c1abf41c61db87.tar.gz musl-cf7db2427f99d784f3d27a4036c1abf41c61db87.tar.bz2 musl-cf7db2427f99d784f3d27a4036c1abf41c61db87.tar.xz musl-cf7db2427f99d784f3d27a4036c1abf41c61db87.zip |
use lighter internal stdio lock in getopt error printing
the public flockfile interface is significantly heavier because it has
to handle the possibility of caller returning or thread exiting while
holding the lock.
-rw-r--r-- | src/misc/getopt.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/misc/getopt.c b/src/misc/getopt.c index cd1f292f..7d7b1167 100644 --- a/src/misc/getopt.c +++ b/src/misc/getopt.c @@ -5,6 +5,7 @@ #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) |