fix stderr locking and ferror semantics in getopt message printing
authorRich Felker <dalias@aerifal.cx>
Sat, 20 Dec 2014 04:59:54 +0000 (23:59 -0500)
committerRich Felker <dalias@aerifal.cx>
Sat, 20 Dec 2014 04:59:54 +0000 (23:59 -0500)
commit1d8d86aeb54c0c5439eb07a4bc1b03983fb9d6e8
treecad0aab0c0fca2c341795c5de18e60b9a722a25d
parent7d3512126db7044525cf402255e0a85ac68dc2e9
fix stderr locking and ferror semantics in getopt message printing

if writing the error message fails, POSIX requires that ferror(stderr)
be set. and as a function that operates on a stdio stream, getopt is
required to lock the stream it uses, stderr.

fwrite calls are used instead of fprintf since there is a demand from
some users not to pull in heavy stdio machinery via getopt. this
mimics the original code using write.
src/misc/getopt.c