#include <dlfcn.h>
#include <AvailabilityMacros.h>
-#if (MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_5) && !defined (TARGET_ARM)
+#if defined (TARGET_OSX) && (MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_5)
#define NEEDS_EXCEPTION_THREAD
#endif
mono_sigctx_to_monoctx (&ctx, &tctx->ctx);
- domain_key = mono_domain_get_tls_offset ();
+ domain_key = mono_domain_get_tls_key ();
jit_key = mono_get_jit_tls_key ();
jit_tls = mono_mach_arch_get_tls_value_from_thread (thread_id, jit_key);
domain = mono_mach_arch_get_tls_value_from_thread (thread_id, domain_key);
/*Thread already started to cleanup, can no longer capture unwind state*/
- if (!jit_tls)
+ if (!jit_tls || !domain)
return FALSE;
- g_assert (domain);
#if defined (MONO_ARCH_ENABLE_MONO_LMF_VAR)
lmf_key = mono_get_lmf_tls_offset ();