From b30b65487139ea3f9e58a82e64574480216af058 Mon Sep 17 00:00:00 2001 From: Daniel Adolfsson Date: Mon, 8 May 2017 12:47:20 +0200 Subject: [PATCH] Add support for XSI-compliant strerror_r --- src/logger.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/logger.cc b/src/logger.cc index 84e0bcb..6ddbea9 100644 --- a/src/logger.cc +++ b/src/logger.cc @@ -83,7 +83,14 @@ std::string logger::format(const std::string& fmt, ...) std::string logger::err() { char buf[2048]; + +#if (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && ! _GNU_SOURCE + if (strerror_r(errno, buf, sizeof(buf)) + return "Unknown error"; + return buf; +#else return strerror_r(errno, buf, sizeof(buf)); +#endif } logger logger::error()