[runtime] Ignore ResetAbort when the current appdomain is unloading
[mono.git] / mono / metadata / object-internals.h
index 6167cb0ca127efd96d6f3cfb66ca2d3e058c4e8f..3b4db614bba06297be0e6e70e2a96e35f4e9a21a 100644 (file)
@@ -376,6 +376,7 @@ typedef struct {
 typedef enum {
        MONO_THREAD_FLAG_DONT_MANAGE = 1, // Don't wait for or abort this thread
        MONO_THREAD_FLAG_NAME_SET = 2, // Thread name set from managed code
+       MONO_THREAD_FLAG_APPDOMAIN_ABORT = 4, // Current requested abort originates from appdomain unload
 } MonoThreadFlags;
 
 struct _MonoInternalThread {
@@ -643,6 +644,7 @@ typedef struct {
        gboolean (*mono_current_thread_has_handle_block_guard) (void);
        gboolean (*mono_above_abort_threshold) (void);
        void (*mono_clear_abort_threshold) (void);
+       void (*mono_reraise_exception) (MonoException *ex);
 } MonoRuntimeExceptionHandlingCallbacks;
 
 MONO_COLD void mono_set_pending_exception (MonoException *exc);
@@ -1571,6 +1573,9 @@ ves_icall_array_new_specific (MonoVTable *vtable, uintptr_t n);
 MonoRemoteClass*
 mono_remote_class (MonoDomain *domain, MonoStringHandle class_name, MonoClass *proxy_class, MonoError *error);
 
+gboolean
+mono_remote_class_is_interface_proxy (MonoRemoteClass *remote_class);
+
 MonoObject *
 mono_remoting_invoke (MonoObject *real_proxy, MonoMethodMessage *msg, MonoObject **exc, MonoArray **out_args, MonoError *error);