Merge pull request #2310 from lambdageek/dev/bug-36305
[mono.git] / mcs / class / corlib / System.Runtime.Remoting.Contexts / SynchronizationAttribute.cs
index f21572a47f1ea0561dc6b1ee233aef2437e9ee1c..7ef860da45f1725dd95121b1d8a8473e9bdc6cc7 100644 (file)
@@ -35,6 +35,7 @@ namespace System.Runtime.Remoting.Contexts
 {
        [AttributeUsage(AttributeTargets.Class)]
        [Serializable]
+       [System.Runtime.InteropServices.ComVisible (true)]
        public class SynchronizationAttribute: ContextAttribute, IContributeClientContextSink, IContributeServerContextSink
        {
                public const int NOT_SUPPORTED = 1;
@@ -48,7 +49,7 @@ namespace System.Runtime.Remoting.Contexts
                [NonSerialized]
                bool _locked;
                [NonSerialized]
-               int _lockCount = 0;
+               int _lockCount;
                
                [NonSerialized]
                Mutex _mutex = new Mutex (false);
@@ -144,6 +145,7 @@ namespace System.Runtime.Remoting.Contexts
                        }
                }
                
+               [System.Runtime.InteropServices.ComVisible (true)]
                public override void GetPropertiesForNewContext (IConstructionCallMessage ctorMsg)
                {
                        if (_flavor != NOT_SUPPORTED) {
@@ -161,6 +163,7 @@ namespace System.Runtime.Remoting.Contexts
                        return new SynchronizedServerContextSink (nextSink, this);
                }
                
+               [System.Runtime.InteropServices.ComVisible (true)]
                public override bool IsContextOK (Context ctx, IConstructionCallMessage msg)
                {
                        SynchronizationAttribute prop = ctx.GetProperty ("Synchronization") as SynchronizationAttribute;