[macios-devel] Signal-chaining & crash reporters
Miguel de Icaza
miguel at microsoft.com
Fri Sep 16 17:22:01 UTC 2016
Thanks for getting these proposals out Rolf.
I am not a fan of any of the provided options.
We have two issues here: Mono is doing the right thing by supporting “chained handlers”, but many of these libraries can not chain signal handlers.
Let me propose that we add a pair of methods, to undo the signal handling setup, and to restore the handling setup and surface those to managed code.
The code for things like HockeyApp would become:
Mono.UndoSignalHandlingSetup (); // SIGSEGV points back to original handlers
HockeyAppInstallHandlers (); // SIGSEGV now points to HockeyApp handlers
Mono.InstallSignalHandlers (); // SIGSEGV now points to Mono handler, that have chained capabilities
The Undo/Install is necessary for the rare case of a library that can do proper chaining and might want to chain to another handler, so they would not chain back to Mono.
More information about the macios-devel