feat(crashhandler): added crash handler for exceptions handling on runtime#551
Open
JeanPhilippeKernel wants to merge 1 commit into
Open
feat(crashhandler): added crash handler for exceptions handling on runtime#551JeanPhilippeKernel wants to merge 1 commit into
JeanPhilippeKernel wants to merge 1 commit into
Conversation
8c1b074 to
0d01f9a
Compare
35e4303 to
68f1093
Compare
b1c7eec to
d0c571c
Compare
… log, and crash dialog - Install/Uninstall signal handlers (Linux/macOS) and SEH filter (Windows) - Capture backtrace on crashing thread in signal handler; overwrite frame 0 with faulting PC from ucontext_t so the log points at the crash site - OnCrash() captures call-site stack before waking the worker thread - Crash log header includes App, Date, OS, Arch, CPU, and signal/exception - Crash dialog: GTK3 (dlopen, no compile-time dep) on Linux with zenity/kdialog fallback; native Cocoa window on macOS (two paths: signal vs OnCrash); native Win32 window on Windows - Windows: minidump written via MiniDumpWriteDump; 32KB stack trace buffer; DuplicateHandle with pseudo-handle fallback - PreCrashCallback with 2-second timeout; pthread_join on completion, pthread_detach on timeout - ZENGINE_VALIDATE_ASSERT wired to OnAssertionFailure in Release/RelWithDebInfo - CrashDialogDemo and CrashHandler_test scoped to Release/RelWithDebInfo builds - Alt-stack uses fixed 32KB constant (SIGSTKSZ non-constexpr on glibc 2.34+)
d0c571c to
f3851d1
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR addresses the crash-handler design doc : crash-handler design doc
For this implementation, we skipped the upload section since it will require setting up a logging platform