Merge branch 'tmp'

This commit is contained in:
taynpg 2025-05-16 11:40:41 +08:00
commit b9e7bdb734

View File

@ -4462,9 +4462,9 @@ private:
sig_handler(int signo, siginfo_t* info, void* _ctx) sig_handler(int signo, siginfo_t* info, void* _ctx)
{ {
if (signo == SIGINT) { if (signo == SIGINT) {
if (user_sig_handler_) { if (user_sig_handler_) {
user_sig_handler_(signo); user_sig_handler_(signo);
} }
_exit(EXIT_FAILURE); _exit(EXIT_FAILURE);
} }
handleSignal(signo, info, _ctx); handleSignal(signo, info, _ctx);
@ -4528,6 +4528,7 @@ public:
SetUnhandledExceptionFilter(crash_handler); SetUnhandledExceptionFilter(crash_handler);
signal(SIGABRT, signal_handler); signal(SIGABRT, signal_handler);
signal(SIGINT, msignal_handler);
_set_abort_behavior(0, _WRITE_ABORT_MSG | _CALL_REPORTFAULT); _set_abort_behavior(0, _WRITE_ABORT_MSG | _CALL_REPORTFAULT);
std::set_terminate(&terminator); std::set_terminate(&terminator);
@ -4629,6 +4630,13 @@ private:
abort(); abort();
} }
static inline void msignal_handler(int sig)
{
if (user_sig_handler_) {
user_sig_handler_(sig);
}
}
static inline void __cdecl invalid_parameter_handler(const wchar_t*, const wchar_t*, const wchar_t*, unsigned int, static inline void __cdecl invalid_parameter_handler(const wchar_t*, const wchar_t*, const wchar_t*, unsigned int,
uintptr_t) uintptr_t)
{ {