On Mon, Jan 26, 2009 at 10:43 PM, Michael Ash <michael....@gmail.com> wrote: > Actually it's pretty easy to avoid exiting due to EXC_BAD_ACCESS, just > install a signal handler for SIGSEGV.
In my experience, setting a handler for SIGSEGV is problematic because the crash reporter still starts up, so its best to handle the Mach exception directly instead of resorting to Unix signals (which seem to be emulated under Mach, rather than a native feature). The Crash Reporter is not always what you want, because illegal memory access is not always a fatal error in all cases, for example some language VMs use memory protection to implement funky GC algorithms. Anyway, to answer Oleg's question, I have some BSD-licensed code which demonstrates this. Once you figure out the somewhat-hairy Mach APIs, it is pretty straightforward: http://gitweb.factorcode.org/gitweb.cgi?p=factor/.git;a=blob_plain;f=vm/mach_signal.c;hb=HEAD Slava _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com