< prev index next >
src/jdk.jpackage/windows/native/libjpackage/WinErrorHandling.cpp
Print this page
*** 36,52 ****
std::ostringstream err;
err << (label ? label : "Some error") << " [" << errorCode << "]";
HMODULE hmodule = NULL;
if (c) {
! GetModuleHandleEx(
! GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT,
! reinterpret_cast<LPCTSTR>(c),
! &hmodule);
if (!hmodule) {
! LOG_WARNING(tstrings::any() << "GetModuleHandleEx() failed for " << c << " address.");
}
}
if (hmodule || !c) {
err << "(" << SysError::getSysErrorMessage(errorCode, hmodule) << ")";
}
--- 36,52 ----
std::ostringstream err;
err << (label ? label : "Some error") << " [" << errorCode << "]";
HMODULE hmodule = NULL;
if (c) {
! GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS
! | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT,
! reinterpret_cast<LPCTSTR>(c), &hmodule);
if (!hmodule) {
! LOG_WARNING(tstrings::any() << "GetModuleHandleEx() failed for "
! << c << " address.");
}
}
if (hmodule || !c) {
err << "(" << SysError::getSysErrorMessage(errorCode, hmodule) << ")";
}
*** 103,113 ****
} // namespace
SysError::SysError(const tstrings::any& msg, const void* caller, DWORD ec,
const char* label):
! std::runtime_error(makeMessage(msg.str(), label, caller, ec)) {
}
std::wstring SysError::getSysErrorMessage(DWORD errCode, HMODULE moduleHandle) {
tstrings::any msg;
msg << "system error " << errCode
--- 103,114 ----
} // namespace
SysError::SysError(const tstrings::any& msg, const void* caller, DWORD ec,
const char* label):
!
! std::runtime_error(makeMessage(msg.str(), label, caller, ec)) {
}
std::wstring SysError::getSysErrorMessage(DWORD errCode, HMODULE moduleHandle) {
tstrings::any msg;
msg << "system error " << errCode
*** 119,125 ****
HRESULT hrOrig = hr;
// for FACILITY_WIN32 facility we need to reset hiword
if(HRESULT_FACILITY(hr) == FACILITY_WIN32) {
hr = HRESULT_CODE(hr);
}
! return tstrings::format(_T("COM error 0x%08X (%s)"), hrOrig, getSystemMessageDescription(hr, NULL));
}
--- 120,127 ----
HRESULT hrOrig = hr;
// for FACILITY_WIN32 facility we need to reset hiword
if(HRESULT_FACILITY(hr) == FACILITY_WIN32) {
hr = HRESULT_CODE(hr);
}
! return tstrings::format(_T("COM error 0x%08X (%s)"), hrOrig,
! getSystemMessageDescription(hr, NULL));
}
< prev index next >