diff options
Diffstat (limited to 'libc/bionic/libc_logging.cpp')
-rw-r--r-- | libc/bionic/libc_logging.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libc/bionic/libc_logging.cpp b/libc/bionic/libc_logging.cpp index d6fa1db78..b57e24297 100644 --- a/libc/bionic/libc_logging.cpp +++ b/libc/bionic/libc_logging.cpp @@ -230,6 +230,7 @@ static void SendRepeat(Out& o, char ch, int count) { /* Perform formatted output to an output target 'o' */ template <typename Out> static void out_vformat(Out& o, const char* format, va_list args) { + int caller_errno = errno; int nn = 0; for (;;) { @@ -380,7 +381,7 @@ static void out_vformat(Out& o, const char* format, va_list args) { buffer[1] = '\0'; } else if (c == 'm') { // syslog-like %m for strerror(errno). - str = strerror(errno); + str = strerror(caller_errno); } else { __assert(__FILE__, __LINE__, "conversion specifier unsupported"); } |