Fix implementation for GetLastErrorMsg

This commit is contained in:
zhupengfei
2020-04-22 23:09:12 +08:00
parent 6068eda710
commit 8beac71fb0
+4 -1
View File
@@ -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);