[Mono-dev] Catching NRE in Embedded Mono

Jeff Ward jeff at fuzzybinary.com
Mon Jan 9 15:03:33 UTC 2012

> A SIGSEGV escaping the runtime means that your app is either
> overriding Mono's SIGSEGV handler (crash reporter?), or the
> runtime is crashing due to a SIGSEGV in native code.
> This is untrappable.
> In all other cases, NullReferenceExceptions are returned
> back like any other exception via a MonoException** pointer
> (see the last arg of mono_runtime_invoke).
> Robert

Hey Robert,

I'm not personally overriding the SIGSEGV handler (though I may in the
future) but the Visual Studio debugger may be?  Is that possible?

I do have a MonoObject** being pushed to mono_runtime_invoke, but even in
the most simple case (directly accessing a null variable) I'm not getting
back an NRE but an access violation reading location 0.

I noticed signal chaining was added recently.  Do I need to turn this on /
off to get the behavior I'm expecting (mono handles most signals on its
own, before passing them on to the to the native code?)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20120109/ecae2202/attachment.html 

More information about the Mono-devel-list mailing list