X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmetadata%2Fappdomain.c;h=31725457da0c1ad43f6c0ad254a263af5acef6d4;hb=1e726ce7a38a92860acab28f4427813d2ba14c13;hp=c2b2efbbabcd990a8871cb699cb147e680811a67;hpb=8f59998c4f744c7b78cf6cdd7f5849f99902c4b8;p=mono.git diff --git a/mono/metadata/appdomain.c b/mono/metadata/appdomain.c index c2b2efbbabc..31725457da0 100644 --- a/mono/metadata/appdomain.c +++ b/mono/metadata/appdomain.c @@ -60,6 +60,7 @@ #include #include #include +#include #ifdef HOST_WIN32 #include #endif @@ -75,7 +76,7 @@ * Changes which are already detected at runtime, like the addition * of icalls, do not require an increment. */ -#define MONO_CORLIB_VERSION 104 +#define MONO_CORLIB_VERSION 110 typedef struct { @@ -864,12 +865,17 @@ mono_set_private_bin_path_from_config (MonoDomain *domain) MonoAppDomain * ves_icall_System_AppDomain_createDomain (MonoString *friendly_name, MonoAppDomainSetup *setup) { +#ifdef DISABLE_APPDOMAINS + mono_raise_exception (mono_get_exception_not_supported ("AppDomain creation is not supported on this runtime.")); + return NULL; +#else char *fname = mono_string_to_utf8 (friendly_name); MonoAppDomain *ad = mono_domain_create_appdomain_internal (fname, setup); g_free (fname); return ad; +#endif } MonoArray * @@ -997,7 +1003,7 @@ add_assemblies_to_domain (MonoDomain *domain, MonoAssembly *ass, GHashTable *ht) if (!g_hash_table_lookup (ht, ass)) { mono_assembly_addref (ass); g_hash_table_insert (ht, ass, ass); - domain->domain_assemblies = g_slist_prepend (domain->domain_assemblies, ass); + domain->domain_assemblies = g_slist_append (domain->domain_assemblies, ass); mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_ASSEMBLY, "Assembly %s[%p] added to domain %s, ref_count=%d", ass->aname.name, ass, domain->friendly_name, ass->ref_count); } @@ -2006,6 +2012,9 @@ ves_icall_System_AppDomain_InternalUnload (gint32 domain_id) */ if (g_getenv ("MONO_NO_UNLOAD")) return; +#ifdef __native_client__ + return; +#endif mono_domain_unload (domain); }