diff options
author | Morph <39850852+Morph1984@users.noreply.github.com> | 2021-09-08 14:36:20 -0400 |
---|---|---|
committer | Morph <39850852+Morph1984@users.noreply.github.com> | 2021-09-11 17:19:14 -0400 |
commit | 290afc00d36bbdcdc67d66a4586fd2f188734ad3 (patch) | |
tree | d4f9a8eae42dd93ff1e7393ffea03b30faeab125 /src/common/misc.cpp | |
parent | be4e1929033aff005472163164ab0ccc80d81c19 (diff) |
common: Move error handling to error.cpp/h
This allows us to avoid implicitly including <string> every time common_funcs.h is included.
Diffstat (limited to 'src/common/misc.cpp')
-rw-r--r-- | src/common/misc.cpp | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/src/common/misc.cpp b/src/common/misc.cpp deleted file mode 100644 index 495385b9e..000000000 --- a/src/common/misc.cpp +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2013 Dolphin Emulator Project / 2014 Citra Emulator Project -// Licensed under GPLv2 or any later version -// Refer to the license.txt file included. - -#include <cstddef> -#ifdef _WIN32 -#include <windows.h> -#else -#include <cerrno> -#include <cstring> -#endif - -#include "common/common_funcs.h" - -std::string NativeErrorToString(int e) { -#ifdef _WIN32 - LPSTR err_str; - - DWORD res = FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_ALLOCATE_BUFFER | - FORMAT_MESSAGE_IGNORE_INSERTS, - nullptr, e, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), - reinterpret_cast<LPSTR>(&err_str), 1, nullptr); - if (!res) { - return "(FormatMessageA failed to format error)"; - } - std::string ret(err_str); - LocalFree(err_str); - return ret; -#else - char err_str[255]; -#if defined(__GLIBC__) && (_GNU_SOURCE || (_POSIX_C_SOURCE < 200112L && _XOPEN_SOURCE < 600)) - // Thread safe (GNU-specific) - const char* str = strerror_r(e, err_str, sizeof(err_str)); - return std::string(str); -#else - // Thread safe (XSI-compliant) - int second_err = strerror_r(e, err_str, sizeof(err_str)); - if (second_err != 0) { - return "(strerror_r failed to format error)"; - } - return std::string(err_str); -#endif // GLIBC etc. -#endif // _WIN32 -} - -std::string GetLastErrorMsg() { -#ifdef _WIN32 - return NativeErrorToString(GetLastError()); -#else - return NativeErrorToString(errno); -#endif -} |