diff options
author | Matt Stancliff <matt@genges.com> | 2015-01-05 14:48:40 -0500 |
---|---|---|
committer | Matt Stancliff <matt@genges.com> | 2015-01-05 16:53:23 -0500 |
commit | cc202324064ac36a008b85e3b1946e59d83cb8b4 (patch) | |
tree | f1012c7c02f48d69696892df66a2f830f9e6c2ee /.gitignore | |
parent | ba3e74c40888fe773290fda2561fdae5d5bb53c7 (diff) |
Fix errno error buffers to not clobber errors
The strerror_r API has two flavors depending on system options.
The bad flavor uses a static buffer for returning results, so if
you save the pointer from strerror_r, the string you're referencing
becomes useless if anybody else calls strerror_r again
The good flavor does what you expect: it writes the error to your buffer.
This commit uses strerror_r directly if it's a good version or copies
the static buffer into our private buffer if it's a bad version.
Thanks to gemorin for explaining the problem and drafting a fix.
Fixes #239
Diffstat (limited to '.gitignore')
0 files changed, 0 insertions, 0 deletions