diff options
Diffstat (limited to 'libc/bionic/dirent.cpp')
-rw-r--r-- | libc/bionic/dirent.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libc/bionic/dirent.cpp b/libc/bionic/dirent.cpp index 3a7b5b4..74297d8 100644 --- a/libc/bionic/dirent.cpp +++ b/libc/bionic/dirent.cpp @@ -36,7 +36,8 @@ #include <sys/types.h> #include <unistd.h> -#include <private/ScopedPthreadMutexLocker.h> +#include "private/ErrnoRestorer.h" +#include "private/ScopedPthreadMutexLocker.h" struct DIR { int fd_; @@ -108,7 +109,7 @@ dirent* readdir(DIR* d) { } int readdir_r(DIR* d, dirent* entry, dirent** result) { - int saved_errno = errno; + ErrnoRestorer errno_restorer; *result = NULL; errno = 0; @@ -124,7 +125,6 @@ int readdir_r(DIR* d, dirent* entry, dirent** result) { memcpy(entry, next, next->d_reclen); *result = entry; } - errno = saved_errno; return 0; } |