From 85da43008ad6b2a1a03b84ba12d5f076f162f915 Mon Sep 17 00:00:00 2001 From: Rolf Bjarne Kvinge Date: Wed, 16 Dec 2015 19:20:33 +0100 Subject: [PATCH] [corlib] Remove multiple appdomain support (AppDomain.CreateDomain, etc) from tvOS/watchOS. --- mcs/build/profiles/monotouch_tv.make | 1 + mcs/build/profiles/monotouch_watch.make | 1 + .../System.ServiceModel.Internals/Makefile | 6 +- mcs/class/corlib/Makefile | 5 ++ .../ApplicationActivator.cs | 26 +++++++ .../corlib/System.Security/SecurityState.cs | 8 +++ mcs/class/corlib/System/AppDomain.cs | 70 +++++++++++++++++++ .../corlib/System/AppDomainInitializer.cs | 4 ++ mcs/class/corlib/System/AppDomainManager.cs | 52 ++++++++++++++ .../corlib/System/AppDomainManager_2_1.cs | 21 ++++++ mcs/class/corlib/System/AppDomainSetup.cs | 11 +++ .../Test/System.Security/SecurityStateTest.cs | 2 + .../Test/System.Threading/ThreadTest.cs | 2 + mcs/class/corlib/Test/System/AppDomainCas.cs | 4 ++ .../Test/System/AppDomainManagerTest.cs | 2 + .../corlib/Test/System/AppDomainSetupTest.cs | 4 ++ 16 files changed, 218 insertions(+), 1 deletion(-) diff --git a/mcs/build/profiles/monotouch_tv.make b/mcs/build/profiles/monotouch_tv.make index 2a36da9c203..a375281243a 100644 --- a/mcs/build/profiles/monotouch_tv.make +++ b/mcs/build/profiles/monotouch_tv.make @@ -5,4 +5,5 @@ PROFILE_MCS_FLAGS += \ NO_THREAD_ABORT=1 NO_THREAD_SUSPEND_RESUME=1 +NO_MULTIPLE_APPDOMAINS=1 NO_PROCESS_START=1 diff --git a/mcs/build/profiles/monotouch_watch.make b/mcs/build/profiles/monotouch_watch.make index 8534aaf1f77..0242c20bf51 100644 --- a/mcs/build/profiles/monotouch_watch.make +++ b/mcs/build/profiles/monotouch_watch.make @@ -5,4 +5,5 @@ PROFILE_MCS_FLAGS += \ NO_THREAD_ABORT=1 NO_THREAD_SUSPEND_RESUME=1 +NO_MULTIPLE_APPDOMAINS=1 NO_PROCESS_START=1 diff --git a/mcs/class/System.ServiceModel.Internals/Makefile b/mcs/class/System.ServiceModel.Internals/Makefile index 24b5d2fc2e9..2ddf10ebd26 100644 --- a/mcs/class/System.ServiceModel.Internals/Makefile +++ b/mcs/class/System.ServiceModel.Internals/Makefile @@ -2,12 +2,16 @@ thisdir = class/System.ServiceModel.Internals SUBDIRS = include ../../build/rules.make +ifndef NO_MULTIPLE_APPDOMAINS +REFERENCE_SOURCES_FLAGS += -d:MONO_FEATURE_MULTIPLE_APPDOMAINS +endif + LIBRARY = System.ServiceModel.Internals.dll LIB_REFS = System System.Core System.Xml ifneq (2.1, $(FRAMEWORK_VERSION)) LIB_REFS += System.Configuration endif -LIB_MCS_FLAGS = /unsafe +LIB_MCS_FLAGS = /unsafe $(REFERENCE_SOURCES_FLAGS) TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) diff --git a/mcs/class/corlib/Makefile b/mcs/class/corlib/Makefile index 1162bf54f78..ef5490a1661 100644 --- a/mcs/class/corlib/Makefile +++ b/mcs/class/corlib/Makefile @@ -51,6 +51,11 @@ REFERENCE_SOURCES_FLAGS += -d:MONO_FEATURE_THREAD_SUSPEND_RESUME TEST_MCS_FLAGS += -d:MONO_FEATURE_THREAD_SUSPEND_RESUME endif +ifndef NO_MULTIPLE_APPDOMAINS +REFERENCE_SOURCES_FLAGS += -d:MONO_FEATURE_MULTIPLE_APPDOMAINS +TEST_MCS_FLAGS += -d:MONO_FEATURE_MULTIPLE_APPDOMAINS +endif + WARNING_ABOUT_DISABLED_WARNING=1635 LOCAL_MCS_FLAGS = -unsafe -nostdlib -nowarn:612,618,$(WARNING_ABOUT_DISABLED_WARNING) -d:INSIDE_CORLIB,MONO_CULTURE_DATA -d:LIBC $(REFERENCE_SOURCES_FLAGS) DEFAULT_REFERENCES = diff --git a/mcs/class/corlib/System.Runtime.Hosting/ApplicationActivator.cs b/mcs/class/corlib/System.Runtime.Hosting/ApplicationActivator.cs index 877d9a7e7ee..bb3ed48bced 100644 --- a/mcs/class/corlib/System.Runtime.Hosting/ApplicationActivator.cs +++ b/mcs/class/corlib/System.Runtime.Hosting/ApplicationActivator.cs @@ -33,6 +33,7 @@ using System.Security.Policy; namespace System.Runtime.Hosting { +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [ComVisible (true)] [MonoTODO ("missing manifest support")] public class ApplicationActivator { @@ -91,5 +92,30 @@ namespace System.Runtime.Hosting { return ad.CreateInstance ("assemblyName", "typeName", null); } } +#else + [Obsolete ("ApplicationActivator is not supported on this platform.", true)] + public class ApplicationActivator { + + public ApplicationActivator () + { + throw new PlatformNotSupportedException ("ApplicationActivator is not supported on this platform."); + } + + public virtual ObjectHandle CreateInstance (ActivationContext activationContext) + { + throw new PlatformNotSupportedException ("ApplicationActivator is not supported on this platform."); + } + + public virtual ObjectHandle CreateInstance (ActivationContext activationContext, string[] activationCustomData) + { + throw new PlatformNotSupportedException ("ApplicationActivator is not supported on this platform."); + } + + protected static ObjectHandle CreateInstanceHelper (AppDomainSetup adSetup) + { + throw new PlatformNotSupportedException ("ApplicationActivator is not supported on this platform."); + } + } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS } diff --git a/mcs/class/corlib/System.Security/SecurityState.cs b/mcs/class/corlib/System.Security/SecurityState.cs index 812aa8087ab..19a36f961a5 100644 --- a/mcs/class/corlib/System.Security/SecurityState.cs +++ b/mcs/class/corlib/System.Security/SecurityState.cs @@ -37,6 +37,7 @@ namespace System.Security { public abstract void EnsureState (); +#if MONO_FEATURE_MULTIPLE_APPDOMAINS public bool IsStateAvailable () { AppDomainManager adm = AppDomain.CurrentDomain.DomainManager; @@ -44,6 +45,13 @@ namespace System.Security { return false; return adm.CheckSecuritySettings (this); } +#else + [Obsolete ("SecurityState.IsStateAvailable is not supported on this platform.", true)] + public bool IsStateAvailable () + { + throw new PlatformNotSupportedException ("SecurityState.IsStateAvailable is not supported on this platform."); + } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS } } diff --git a/mcs/class/corlib/System/AppDomain.cs b/mcs/class/corlib/System/AppDomain.cs index 22927ecd2f5..13cc078e575 100644 --- a/mcs/class/corlib/System/AppDomain.cs +++ b/mcs/class/corlib/System/AppDomain.cs @@ -983,6 +983,7 @@ namespace System { return _process_guid; } +#if MONO_FEATURE_MULTIPLE_APPDOMAINS public static AppDomain CreateDomain (string friendlyName) { return CreateDomain (friendlyName, null, null); @@ -1061,6 +1062,25 @@ namespace System { return ad; } +#else + [Obsolete ("AppDomain.CreateDomain is not supported on the current platform.", true)] + public static AppDomain CreateDomain (string friendlyName) + { + throw new PlatformNotSupportedException ("AppDomain.CreateDomain is not supported on the current platform."); + } + + [Obsolete ("AppDomain.CreateDomain is not supported on the current platform.", true)] + public static AppDomain CreateDomain (string friendlyName, Evidence securityInfo) + { + throw new PlatformNotSupportedException ("AppDomain.CreateDomain is not supported on the current platform."); + } + + [Obsolete ("AppDomain.CreateDomain is not supported on the current platform.", true)] + public static AppDomain CreateDomain (string friendlyName, Evidence securityInfo, AppDomainSetup info) + { + throw new PlatformNotSupportedException ("AppDomain.CreateDomain is not supported on the current platform."); + } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS #if !NET_2_1 [Serializable] @@ -1098,13 +1118,23 @@ namespace System { } #endif +#if MONO_FEATURE_MULTIPLE_APPDOMAINS public static AppDomain CreateDomain (string friendlyName, Evidence securityInfo,string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles) { return CreateDomain (friendlyName, securityInfo, CreateDomainSetup (appBasePath, appRelativeSearchPath, shadowCopyFiles)); } +#else + [Obsolete ("AppDomain.CreateDomain is not supported on the current platform.", true)] + public static AppDomain CreateDomain (string friendlyName, Evidence securityInfo,string appBasePath, + string appRelativeSearchPath, bool shadowCopyFiles) + { + throw new PlatformNotSupportedException ("AppDomain.CreateDomain is not supported on the current platform."); + } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS #if !NET_2_1 +#if MONO_FEATURE_MULTIPLE_APPDOMAINS public static AppDomain CreateDomain (string friendlyName, Evidence securityInfo, AppDomainSetup info, PermissionSet grantSet, params StrongName [] fullTrustAssemblies) { @@ -1114,8 +1144,17 @@ namespace System { info.ApplicationTrust = new ApplicationTrust (grantSet, fullTrustAssemblies ?? EmptyArray.Value); return CreateDomain (friendlyName, securityInfo, info); } +#else + [Obsolete ("AppDomain.CreateDomain is not supported on the current platform.", true)] + public static AppDomain CreateDomain (string friendlyName, Evidence securityInfo, AppDomainSetup info, + PermissionSet grantSet, params StrongName [] fullTrustAssemblies) + { + throw new PlatformNotSupportedException ("AppDomain.CreateDomain is not supported on the current platform."); + } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS #endif +#if MONO_FEATURE_MULTIPLE_APPDOMAINS static AppDomainSetup CreateDomainSetup (string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles) { AppDomainSetup info = new AppDomainSetup (); @@ -1130,6 +1169,7 @@ namespace System { return info; } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS [MethodImplAttribute (MethodImplOptions.InternalCall)] private static extern bool InternalIsFinalizingForUnload (int domain_id); @@ -1149,6 +1189,7 @@ namespace System { return Thread.GetDomainID (); } +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [SecurityPermission (SecurityAction.Demand, ControlAppDomain = true)] [ReliabilityContractAttribute (Consistency.MayCorruptAppDomain, Cer.MayFail)] public static void Unload (AppDomain domain) @@ -1158,6 +1199,13 @@ namespace System { InternalUnload (domain.getDomainID()); } +#else + [Obsolete ("AppDomain.Unload is not supported on the current platform.", true)] + public static void Unload (AppDomain domain) + { + throw new PlatformNotSupportedException ("AppDomain.Unload is not supported on the current platform."); + } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS [MethodImplAttribute (MethodImplOptions.InternalCall)] [SecurityPermission (SecurityAction.LinkDemand, ControlAppDomain = true)] @@ -1339,11 +1387,13 @@ namespace System { return null; } +#if MONO_FEATURE_MULTIPLE_APPDOMAINS private void DoDomainUnload () { if (DomainUnload != null) DomainUnload(this, null); } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS [MethodImplAttribute(MethodImplOptions.InternalCall)] internal extern void DoUnhandledException (Exception e); @@ -1389,7 +1439,11 @@ namespace System { [method: SecurityPermission (SecurityAction.LinkDemand, ControlAppDomain = true)] public event ResolveEventHandler AssemblyResolve; +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [method: SecurityPermission (SecurityAction.LinkDemand, ControlAppDomain = true)] +#else + [Obsolete ("AppDomain.DomainUnload is not supported on the current platform.", true)] +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS public event EventHandler DomainUnload; [method: SecurityPermission (SecurityAction.LinkDemand, ControlAppDomain = true)] @@ -1424,10 +1478,17 @@ namespace System { #endif #pragma warning restore 649 +#if MONO_FEATURE_MULTIPLE_APPDOMAINS // default is null public AppDomainManager DomainManager { get { return (AppDomainManager)_domain_manager; } } +#else + [Obsolete ("AppDomain.DomainManager is not supported on this platform.", true)] + public AppDomainManager DomainManager { + get { throw new PlatformNotSupportedException ("AppDomain.DomainManager is not supported on this platform."); } + } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS #if !MOBILE public event ResolveEventHandler ReflectionOnlyAssemblyResolve; @@ -1473,6 +1534,7 @@ namespace System { // static methods +#if MONO_FEATURE_MULTIPLE_APPDOMAINS public static AppDomain CreateDomain (string friendlyName, Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles, AppDomainInitializer adInit, string[] adInitArgs) { @@ -1483,6 +1545,14 @@ namespace System { return CreateDomain (friendlyName, securityInfo, info); } +#else + [Obsolete ("AppDomain.CreateDomain is not supported on the current platform.", true)] + public static AppDomain CreateDomain (string friendlyName, Evidence securityInfo, string appBasePath, + string appRelativeSearchPath, bool shadowCopyFiles, AppDomainInitializer adInit, string[] adInitArgs) + { + throw new PlatformNotSupportedException ("AppDomain.CreateDomain is not supported on the current platform."); + } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS public int ExecuteAssemblyByName (string assemblyName) { diff --git a/mcs/class/corlib/System/AppDomainInitializer.cs b/mcs/class/corlib/System/AppDomainInitializer.cs index 25700d49e5c..c50f40da373 100644 --- a/mcs/class/corlib/System/AppDomainInitializer.cs +++ b/mcs/class/corlib/System/AppDomainInitializer.cs @@ -27,8 +27,12 @@ // namespace System { +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [System.Runtime.InteropServices.ComVisible (true)] [Serializable] +#else + [Obsolete ("AppDomainInitializer is not supported on the current platform.", true)] +#endif public delegate void AppDomainInitializer (string[] args); } diff --git a/mcs/class/corlib/System/AppDomainManager.cs b/mcs/class/corlib/System/AppDomainManager.cs index f0a4770b71e..301fd334c70 100644 --- a/mcs/class/corlib/System/AppDomainManager.cs +++ b/mcs/class/corlib/System/AppDomainManager.cs @@ -36,6 +36,7 @@ using System.Threading; namespace System { +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [ComVisible (true)] [SecurityPermission (SecurityAction.LinkDemand, Infrastructure = true)] [SecurityPermission (SecurityAction.InheritanceDemand, Infrastructure = true)] @@ -111,4 +112,55 @@ namespace System { return AppDomain.CreateDomain (friendlyName, securityInfo, appDomainInfo); } } +#else + [Obsolete ("AppDomainManager is not supported on the current platform.", true)] + public class AppDomainManager : MarshalByRefObject { + public AppDomainManager () + { + throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); + } + + public virtual ApplicationActivator ApplicationActivator { + get { throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); } + } + + public virtual Assembly EntryAssembly { + get { throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); } + } + + public virtual HostExecutionContextManager HostExecutionContextManager { + get { throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); } + } + + public virtual HostSecurityManager HostSecurityManager { + get { throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); } + } + + public AppDomainManagerInitializationOptions InitializationFlags { + get { throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); } + set { throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); } + } + + public virtual AppDomain CreateDomain (string friendlyName, Evidence securityInfo, AppDomainSetup appDomainInfo) + { + throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); + } + + public virtual void InitializeNewDomain (AppDomainSetup appDomainInfo) + { + throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); + } + + public virtual bool CheckSecuritySettings (SecurityState state) + { + throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); + } + + protected static AppDomain CreateDomainHelper (string friendlyName, Evidence securityInfo, AppDomainSetup appDomainInfo) + { + throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); + } + } + +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS } diff --git a/mcs/class/corlib/System/AppDomainManager_2_1.cs b/mcs/class/corlib/System/AppDomainManager_2_1.cs index 572dcae8d2b..cc45ffd33de 100644 --- a/mcs/class/corlib/System/AppDomainManager_2_1.cs +++ b/mcs/class/corlib/System/AppDomainManager_2_1.cs @@ -33,6 +33,7 @@ using System.Security; namespace System { +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [ComVisible (true)] public class AppDomainManager { @@ -51,6 +52,26 @@ namespace System { return (state != null); } } +#else + [Obsolete ("AppDomainManager is not supported on the current platform.", true)] + public class AppDomainManager { + + public AppDomainManager () + { + get { throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); } + } + + public virtual void InitializeNewDomain (AppDomainSetup appDomainInfo) + { + get { throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); } + } + + public virtual bool CheckSecuritySettings (SecurityState state) + { + get { throw new PlatformNotSupportedException ("AppDomainManager is not supported on the current platform."); } + } + } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS } #endif diff --git a/mcs/class/corlib/System/AppDomainSetup.cs b/mcs/class/corlib/System/AppDomainSetup.cs index d689f379ff2..b3e2d510138 100644 --- a/mcs/class/corlib/System/AppDomainSetup.cs +++ b/mcs/class/corlib/System/AppDomainSetup.cs @@ -309,6 +309,7 @@ namespace System set { _activationArguments = value; } } +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [MonoLimitation ("it needs to be invoked within the created domain")] public AppDomainInitializer AppDomainInitializer { get { @@ -319,6 +320,14 @@ namespace System } set { domain_initializer = value; } } +#else + [Obsolete ("AppDomainSetup.AppDomainInitializer is not supported on this platform.", true)] + public AppDomainInitializer AppDomainInitializer { + get { throw new PlatformNotSupportedException ("AppDomainSetup.AppDomainInitializer is not supported on this platform."); } + set { throw new PlatformNotSupportedException ("AppDomainSetup.AppDomainInitializer is not supported on this platform."); } + } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS + [MonoLimitation ("it needs to be used to invoke the initializer within the created domain")] public string [] AppDomainInitializerArguments { @@ -369,7 +378,9 @@ namespace System object [] arr = (object []) bf.Deserialize (ms); _activationArguments = (ActivationArguments) arr [0]; +#if MONO_FEATURE_MULTIPLE_APPDOMAINS domain_initializer = (AppDomainInitializer) arr [1]; +#endif application_trust = (ApplicationTrust) arr [2]; serialized_non_primitives = null; diff --git a/mcs/class/corlib/Test/System.Security/SecurityStateTest.cs b/mcs/class/corlib/Test/System.Security/SecurityStateTest.cs index 7744e7ccb7c..86b3a1dbad2 100644 --- a/mcs/class/corlib/Test/System.Security/SecurityStateTest.cs +++ b/mcs/class/corlib/Test/System.Security/SecurityStateTest.cs @@ -44,12 +44,14 @@ namespace MonoTests.System.Security { } } +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [Test] public void Defaults () { ContreteSecurityState ss = new ContreteSecurityState (); Assert.IsFalse (ss.IsStateAvailable (), "IsStateAvailable"); } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS } } diff --git a/mcs/class/corlib/Test/System.Threading/ThreadTest.cs b/mcs/class/corlib/Test/System.Threading/ThreadTest.cs index b49fba552fa..5773a1003f6 100644 --- a/mcs/class/corlib/Test/System.Threading/ThreadTest.cs +++ b/mcs/class/corlib/Test/System.Threading/ThreadTest.cs @@ -964,6 +964,7 @@ namespace MonoTests.System.Threading } } +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [Test] public void CurrentThread_Domains () { @@ -973,6 +974,7 @@ namespace MonoTests.System.Threading Assert.IsTrue (o.Run ()); AppDomain.Unload (ad); } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS void CheckIsRunning (string s, Thread t) { diff --git a/mcs/class/corlib/Test/System/AppDomainCas.cs b/mcs/class/corlib/Test/System/AppDomainCas.cs index 6d95120f8ae..3516b040c38 100644 --- a/mcs/class/corlib/Test/System/AppDomainCas.cs +++ b/mcs/class/corlib/Test/System/AppDomainCas.cs @@ -26,6 +26,8 @@ // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // +#if MONO_FEATURE_MULTIPLE_APPDOMAINS + using NUnit.Framework; using System; @@ -404,3 +406,5 @@ namespace MonoCasTests.System { } } } + +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS diff --git a/mcs/class/corlib/Test/System/AppDomainManagerTest.cs b/mcs/class/corlib/Test/System/AppDomainManagerTest.cs index 83d198ca503..f90a9eccc61 100644 --- a/mcs/class/corlib/Test/System/AppDomainManagerTest.cs +++ b/mcs/class/corlib/Test/System/AppDomainManagerTest.cs @@ -26,6 +26,7 @@ // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // +#if MONO_FEATURE_MULTIPLE_APPDOMAINS using System; using System.Security; @@ -56,3 +57,4 @@ namespace MonoTests.System { } } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS diff --git a/mcs/class/corlib/Test/System/AppDomainSetupTest.cs b/mcs/class/corlib/Test/System/AppDomainSetupTest.cs index 2e4b6e59a83..121d1c45f10 100644 --- a/mcs/class/corlib/Test/System/AppDomainSetupTest.cs +++ b/mcs/class/corlib/Test/System/AppDomainSetupTest.cs @@ -169,6 +169,7 @@ namespace MonoTests.System } } +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [Test] #if MOBILE [Category ("NotWorking")] @@ -184,6 +185,7 @@ namespace MonoTests.System Assert.IsNotNull (data); Assert.IsTrue ((bool) data); } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS static void AppDomainInitialized1 (string [] args) { @@ -199,6 +201,7 @@ namespace MonoTests.System { } +#if MONO_FEATURE_MULTIPLE_APPDOMAINS [Test] #if MOBILE [Category ("NotWorking")] @@ -211,5 +214,6 @@ namespace MonoTests.System s.AppDomainInitializer = InstanceInitializer; AppDomain.CreateDomain ("MyDomain", null, s); } +#endif // MONO_FEATURE_MULTIPLE_APPDOMAINS } } -- 2.25.1