summaryrefslogtreecommitdiff
path: root/src/regress/lib/libc/stdio_threading/fread
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/fread
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/fread')
-rwxr-xr-xsrc/regress/lib/libc/stdio_threading/fread/fread_test.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/regress/lib/libc/stdio_threading/fread/fread_test.c b/src/regress/lib/libc/stdio_threading/fread/fread_test.c
index c45a64d14e..6bd734b470 100755
--- a/src/regress/lib/libc/stdio_threading/fread/fread_test.c
+++ b/src/regress/lib/libc/stdio_threading/fread/fread_test.c
@@ -50,11 +50,12 @@ main(void)
50 strlcpy(sfn, "/tmp/barnacles.XXXXXXXX", sizeof(sfn)); 50 strlcpy(sfn, "/tmp/barnacles.XXXXXXXX", sizeof(sfn));
51 if ((fd = mkstemp(sfn)) == -1 || 51 if ((fd = mkstemp(sfn)) == -1 ||
52 (sfp = fdopen(fd, "w+")) == NULL) { 52 (sfp = fdopen(fd, "w+")) == NULL) {
53 int saved_errno = errno;
53 if (fd != -1) { 54 if (fd != -1) {
54 unlink(sfn); 55 unlink(sfn);
55 close(fd); 56 close(fd);
56 } 57 }
57 err(1, "could not open temporary file"); 58 errc(1, saved_errno, "could not open temporary file");
58 } 59 }
59 60
60 for (i = 0; i < 4096 * THREAD_COUNT; i++) 61 for (i = 0; i < 4096 * THREAD_COUNT; i++)