From 8beac71fb0fcaab3a56e09c07e86f25db861dc02 Mon Sep 17 00:00:00 2001 From: zhupengfei Date: Wed, 22 Apr 2020 23:09:12 +0800 Subject: [PATCH] Fix implementation for GetLastErrorMsg --- src/common/misc.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/common/misc.cpp b/src/common/misc.cpp index 8dc54fb..bbd2516 100644 --- a/src/common/misc.cpp +++ b/src/common/misc.cpp @@ -19,9 +19,12 @@ std::string GetLastErrorMsg() { static const std::size_t buff_size = 255; char err_str[buff_size]; -#ifdef _WIN32 +#if defined(_WIN32) FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM, nullptr, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), err_str, buff_size, nullptr); +#elif defined(__GNUC__) + const char* err = strerror_r(errno, err_str, buff_size); + return std::string(err, strlen(err)); #else // Thread safe (XSI-compliant) strerror_r(errno, err_str, buff_size);