π CrashCatch v1.2.0
CrashCatch v1.2.0 is our biggest update yet β bringing full Linux support, powerful callback hooks, and the groundwork for cross-platform crash diagnostics β all within a single header file.
β¨ What's New
π§ Linux Support Finalized
- β
POSIX signal handling now supports:
SIGSEGV
β Segmentation faultSIGABRT
β Aborted processSIGFPE
β Floating-point exceptionSIGILL
,SIGBUS
β Illegal instruction, bus errors
- β
Stack traces via
backtrace()
- β
Demangled function names using
__cxa_demangle
- β
Executable path detection via
/proc/self/exe
π§ New CrashContext Struct
- Contains detailed crash metadata passed into callback hooks:
.dmp
file path (Windows).txt
log path- timestamp
- signal or exception code
πͺ onCrash
and onCrashUpload
Hooks
- New configurable callbacks:
config.onCrash = [](const CrashContext& ctx) { // Cleanup or logging before app terminates }; config.onCrashUpload = [](const CrashContext& ctx) { // Send crash file to your server/service };```
Enabled cleanup, telemetry, logging, or remote upload logic right from the app!
π Skips Debug Exceptions
Windows debug control exceptions (DBG_PRINTEXCEPTION_C
, DBG_CONTROL_C
) are now ignored to avoid false positives.
π§ͺ Examples Added
- π§΅
Example_ThreadCrash.cpp
- β
Example_divideByZero.cpp
- πΌ
Example_FullConfig.cpp
β now includesonCrash
- βοΈ
Example_UploadCrash.cpp
β demonstrates usingonCrashUpload
to simulate a remote crash report
π Internal Improvements
- Reorganized internal logic with clear inline documentation
- Hardened Linux support for production use
- Improved stack trace readability
- Unified timestamp generation and path formatting
π Documentation
- Updated
README.md
with full platform details - New
linux.md
page under GitHub Pages - Refined screenshots, quick start, and crash log examples
π¦ CMake & CI
- Enhanced CMake integration remains header-only
- GitHub Actions CI runs automatically on push
π§ Roadmap (Next Up)
- macOS support via Mach exceptions
- Remote crash uploads (via webhook or HTTPS endpoint)
- .json crash logs
- Crash viewer UI tool
- Auto-rotate / cleanup of old log
π§ Thanks & Community
Thanks to everyone who tested Linux support, contributed feedback, or opened issues. Letβs keep building it better β and safer.
If you like it, consider β starring the project!