mirror of
https://github.com/corda/corda.git
synced 2025-01-09 14:33:30 +00:00
fix GCC 4.x aliasing warnings in windows.cpp
This commit is contained in:
parent
8c1c861a58
commit
8add9db0b2
@ -837,11 +837,18 @@ LONG CALLBACK
|
|||||||
handleException(LPEXCEPTION_POINTERS e)
|
handleException(LPEXCEPTION_POINTERS e)
|
||||||
{
|
{
|
||||||
if (e->ExceptionRecord->ExceptionCode == EXCEPTION_ACCESS_VIOLATION) {
|
if (e->ExceptionRecord->ExceptionCode == EXCEPTION_ACCESS_VIOLATION) {
|
||||||
|
void* ip = reinterpret_cast<void*>(e->ContextRecord->Eip);
|
||||||
|
void* base = reinterpret_cast<void*>(e->ContextRecord->Ebp);
|
||||||
|
void* stack = reinterpret_cast<void*>(e->ContextRecord->Esp);
|
||||||
|
void* thread = reinterpret_cast<void*>(e->ContextRecord->Ebx);
|
||||||
|
|
||||||
bool jump = system->segFaultHandler->handleSignal
|
bool jump = system->segFaultHandler->handleSignal
|
||||||
(reinterpret_cast<void**>(&(e->ContextRecord->Eip)),
|
(&ip, &base, &stack, &thread);
|
||||||
reinterpret_cast<void**>(&(e->ContextRecord->Ebp)),
|
|
||||||
reinterpret_cast<void**>(&(e->ContextRecord->Esp)),
|
e->ContextRecord->Eip = reinterpret_cast<DWORD>(ip);
|
||||||
reinterpret_cast<void**>(&(e->ContextRecord->Ebx)));
|
e->ContextRecord->Ebp = reinterpret_cast<DWORD>(base);
|
||||||
|
e->ContextRecord->Esp = reinterpret_cast<DWORD>(stack);
|
||||||
|
e->ContextRecord->Ebx = reinterpret_cast<DWORD>(thread);
|
||||||
|
|
||||||
if (jump) {
|
if (jump) {
|
||||||
return EXCEPTION_CONTINUE_EXECUTION;
|
return EXCEPTION_CONTINUE_EXECUTION;
|
||||||
|
Loading…
Reference in New Issue
Block a user