aboutsummaryrefslogtreecommitdiff
path: root/newlib/libc/stdio/tmpfile.c
diff options
context:
space:
mode:
authorMatt Joyce <matthew.joyce@embedded-brains.de>2022-01-18 10:13:04 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2022-07-13 06:55:41 +0200
commitf3b8138239d3ba34c4ecaa4305b0fbd7eb4e28a5 (patch)
tree80cc7a629134d4568bf5dc71898266555a6863b0 /newlib/libc/stdio/tmpfile.c
parentd0d78e96ebf4187fb9362465f1a397680447046f (diff)
downloadnewlib-f3b8138239d3ba34c4ecaa4305b0fbd7eb4e28a5.zip
newlib-f3b8138239d3ba34c4ecaa4305b0fbd7eb4e28a5.tar.gz
newlib-f3b8138239d3ba34c4ecaa4305b0fbd7eb4e28a5.tar.bz2
Add _REENT_ERRNO(ptr)
Add a _REENT_ERRNO() macro to encapsulate the access to the _errno member of struct reent. This will help to replace the structure member with a thread-local storage object in a follow up patch. Replace uses of __errno_r() with _REENT_ERRNO(). Keep __errno_r() macro for potential users outside of Newlib.
Diffstat (limited to 'newlib/libc/stdio/tmpfile.c')
-rw-r--r--newlib/libc/stdio/tmpfile.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/newlib/libc/stdio/tmpfile.c b/newlib/libc/stdio/tmpfile.c
index f209a3e..5fe6e3b 100644
--- a/newlib/libc/stdio/tmpfile.c
+++ b/newlib/libc/stdio/tmpfile.c
@@ -65,15 +65,15 @@ _tmpfile_r (struct _reent *ptr)
fd = _open_r (ptr, f, O_RDWR | O_CREAT | O_EXCL | O_BINARY,
S_IRUSR | S_IWUSR);
}
- while (fd < 0 && ptr->_errno == EEXIST);
+ while (fd < 0 && _REENT_ERRNO(ptr) == EEXIST);
if (fd < 0)
return NULL;
fp = _fdopen_r (ptr, fd, "wb+");
- e = ptr->_errno;
+ e = _REENT_ERRNO(ptr);
if (!fp)
_close_r (ptr, fd);
(void) _remove_r (ptr, f);
- ptr->_errno = e;
+ _REENT_ERRNO(ptr) = e;
return fp;
}