Platforms to show: All Mac Windows Linux Cross-Platform

The module CallDelegateCrashSafeMBS

module CallDelegateCrashSafeMBS
Type Topic Plugin Version macOS Windows Linux iOS Targets
module Process MBS Util Plugin 23.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
The module to call a delegate and catch a crash.
Example

Try

System.DebugLog "Try the call..."

CallDelegateCrashSafeMBS AddressOf TestMethod

System.DebugLog "Call succeeded!"

Catch c As DelegateCrashExceptionMBS

System.DebugLog "Caught exception!"
System.DebugLog c.Message

End Try

We can catch the following conditions:

  • Invalid pointer access
  • Invalid instruction
  • Floating point exception
  • Wrong system call
  • Broken pipe
  • Bus error

We may crash ourselves on stack corruption and we print the stack trace to stderr for macOS and Linux for debugging.

If a crash is caught, there may be memory leaked as objects allocated in the called method are not freed. The call function can not be used recursively and only on one thread at the time.

Some examples which use this module:

Blog Entries

Xojo Developer Magazine

Release notes


The items on this page are in the following plugins: MBS Util Plugin.


The biggest plugin in space...