summaryrefslogtreecommitdiff
path: root/src/regress/lib/libc/stdio_threading/fwrite/fwrite_test.c
diff options
context:
space:
mode:
authorguenther <>2014-07-20 01:38:40 +0000
committerguenther <>2014-07-20 01:38:40 +0000
commitde21c6ec21e1a745fd5d9c4878218fb4d07f0737 (patch)
tree5e6c4eae816d1f4766599fa8e5f8fea5d7d1a35e /src/regress/lib/libc/stdio_threading/fwrite/fwrite_test.c
parent61b0982e8e00b9d378695b1873b5409afd7d7b96 (diff)
downloadopenbsd-de21c6ec21e1a745fd5d9c4878218fb4d07f0737.tar.gz
openbsd-de21c6ec21e1a745fd5d9c4878218fb4d07f0737.tar.bz2
openbsd-de21c6ec21e1a745fd5d9c4878218fb4d07f0737.zip
Make sure the correct errno is reported by warn* or err* and not
the errno of an intervening cleanup operation like close/unlink/etc. Diff from Doug Hogan (doug (at) acyclic.org)
Diffstat (limited to 'src/regress/lib/libc/stdio_threading/fwrite/fwrite_test.c')
-rwxr-xr-xsrc/regress/lib/libc/stdio_threading/fwrite/fwrite_test.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/regress/lib/libc/stdio_threading/fwrite/fwrite_test.c b/src/regress/lib/libc/stdio_threading/fwrite/fwrite_test.c
index 621c5cb6e8..86c450cbc9 100755
--- a/src/regress/lib/libc/stdio_threading/fwrite/fwrite_test.c
+++ b/src/regress/lib/libc/stdio_threading/fwrite/fwrite_test.c
@@ -46,11 +46,12 @@ main(void)
46 strlcpy(sfn, "/tmp/barnacles.XXXXXXXX", sizeof(sfn)); 46 strlcpy(sfn, "/tmp/barnacles.XXXXXXXX", sizeof(sfn));
47 if ((fd = mkstemp(sfn)) == -1 || 47 if ((fd = mkstemp(sfn)) == -1 ||
48 (sfp = fdopen(fd, "w+")) == NULL) { 48 (sfp = fdopen(fd, "w+")) == NULL) {
49 int saved_errno = errno;
49 if (fd != -1) { 50 if (fd != -1) {
50 unlink(sfn); 51 unlink(sfn);
51 close(fd); 52 close(fd);
52 } 53 }
53 err(1, "could not open temporary file"); 54 errc(1, saved_errno, "could not open temporary file");
54 } 55 }
55 56
56 run_threads(fwrite_thread, sfp); 57 run_threads(fwrite_thread, sfp);