namespace
{ long WINAPI signalHandlerFunction(LPEXCEPTION_POINTERS lpEP);
// Similar to SIGINT handler in sal/osl/unx/signal.cxx BOOL WINAPI CtrlHandlerFunction(DWORD dwCtrlType)
{ switch (dwCtrlType)
{ case CTRL_C_EVENT: case CTRL_BREAK_EVENT: case CTRL_CLOSE_EVENT: switch (oslSignalInfo Info{ osl_Signal_Terminate, 0, nullptr };
callSignalHandler(&Info))
{ case osl_Signal_ActCallNextHdl: break; // Fall through to call the next handler
case osl_Signal_ActAbortApp:
abort(); break;
case osl_Signal_ActKillApp:
_exit(255); break;
default: returnTRUE; // do not call the next handler
}
[[fallthrough]]; default: returnFALSE; // call the next handler
}
}
namespace
{ /* magic Microsoft C++ compiler exception constant */ #define EXCEPTION_MSC_CPP_EXCEPTION 0xe06d7363
long WINAPI signalHandlerFunction(LPEXCEPTION_POINTERS lpEP)
{ #if HAVE_FEATURE_BREAKPAD // we should make sure to call the breakpad handler as // first step when we hit a problem if (pPreviousHandler)
pPreviousHandler(lpEP); #endif
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.