In corlib/System.Runtime.Remoting.Proxies:
authorRobert Jordan <robertj@gmx.net>
Sat, 27 Feb 2010 23:18:52 +0000 (23:18 -0000)
committerRobert Jordan <robertj@gmx.net>
Sat, 27 Feb 2010 23:18:52 +0000 (23:18 -0000)
2010-02-28  Robert Jordan  <robertj@gmx.net>

* RealProxy.cs (PrivateInvoke): BeginInvoke return messages
do not have out args (by design). The issue has existed for many
years but it was invisible because mono_delegate_begin_invoke ()
has swallowed exceptions, which was fixed by Gonzalo in r141856.
Fixes a couple of disabled remoting tests (#576618).

In System.Runtime.Remoting/Test:
2010-02-28  Robert Jordan  <robertj@gmx.net>

* BaseCalls.cs: Enable tests again. See bug #576618.

svn path=/trunk/mcs/; revision=152616

mcs/class/System.Runtime.Remoting/Test/BaseCalls.cs
mcs/class/System.Runtime.Remoting/Test/ChangeLog
mcs/class/corlib/System.Runtime.Remoting.Proxies/ChangeLog
mcs/class/corlib/System.Runtime.Remoting.Proxies/RealProxy.cs

index e97ba613c980e4aa6d95b5185ce8b7a6c9b267e2..d1e7bb000e7771eaf9ddfbf0dcca3858a37ead3a 100644 (file)
@@ -157,21 +157,18 @@ namespace MonoTests.Remoting
                }\r
 \r
                [Test]\r
-               [Category ("NotWorking")]\r
                public void TestInstancePrimitiveParamsInOut ()\r
                {\r
                        RunTestPrimitiveParamsInOut (InternalGetInstanceSurrogate());\r
                }\r
 \r
                [Test]\r
-               [Category ("NotWorking")]\r
                public void TestAbstractPrimitiveParamsInOut ()\r
                {\r
                        RunTestPrimitiveParamsInOut (InternalGetAbstractSurrogate());\r
                }\r
 \r
                [Test]\r
-               [Category ("NotWorking")]\r
                public void TestInterfacePrimitiveParamsInOut ()\r
                {\r
                        RunTestPrimitiveParamsInOut (InternalGetInterfaceSurrogate());\r
@@ -196,21 +193,21 @@ namespace MonoTests.Remoting
                }\r
 \r
                [Test]\r
-               [Ignore ("Fails on MS")]\r
+               [Category ("NotDotNet")]\r
                public void TestInstanceComplexParamsInOut ()\r
                {\r
                        RunTestComplexParamsInOut (InternalGetInstanceSurrogate());\r
                }\r
 \r
                [Test]\r
-               [Ignore ("Fails on MS")]\r
+               [Category ("NotDotNet")]\r
                public void TestAbstractComplexParamsInOut ()\r
                {\r
                        RunTestComplexParamsInOut (InternalGetAbstractSurrogate());\r
                }\r
 \r
                [Test]\r
-               [Ignore ("Fails on MS")]\r
+               [Category ("NotDotNet")]\r
                public void TestInterfaceComplexParamsInOut ()\r
                {\r
                        RunTestComplexParamsInOut (InternalGetInterfaceSurrogate());\r
index 7a12c0c55cb739f6ebbb02c429c09d817ea33d96..8b3c8e5c94af41798e1c96852320fc6cbad1d395 100644 (file)
@@ -1,3 +1,7 @@
+2010-02-28  Robert Jordan  <robertj@gmx.net>
+
+       * BaseCalls.cs: Enable tests again. See bug #576618.
+
 2010-02-11  Jonathan Pobst  <monkey@jpobst.com>
 
        * ActivationTests.cs: Disable TestCreateHttpWkoSingleCall and
index c9235c69087cef859c73de408bde62ee18399d2a..aafa601367a90497bd31eb45442c1588ce2bc108 100644 (file)
@@ -1,3 +1,11 @@
+2010-02-28  Robert Jordan  <robertj@gmx.net>
+
+       * RealProxy.cs (PrivateInvoke): BeginInvoke return messages
+       do not have out args (by design). The issue has existed for many
+       years but it was invisible because mono_delegate_begin_invoke ()
+       has swallowed exceptions, which was fixed by Gonzalo in r141856.
+       Fixes a couple of disabled remoting tests (#576618).
+
 2009-09-27 Gonzalo Paniagua Javier <gonzalo@novell.com>
 
        * RealProxy.cs: for a custom proxy, retrieve the OutArgs before
index c504001d602df8363dda90099010ce4e4496f4d5..f5f0bfba31f357c899c61921b1797fd607499c02 100644 (file)
@@ -225,10 +225,13 @@ namespace System.Runtime.Remoting.Proxies
                                out_args = null;
                                throw exc.FixRemotingException();
                        }
-                       else if (res_msg is IConstructionReturnMessage || mMsg.CallType == CallType.BeginInvoke) {
+                       else if (res_msg is IConstructionReturnMessage) {
                                if (out_args == null)
                                        out_args = res_msg.OutArgs;
                        }
+                       else if (mMsg.CallType == CallType.BeginInvoke) {
+                               // We don't have OutArgs in this case.
+                       }
                        else if (mMsg.CallType == CallType.Sync) {
                                out_args = ProcessResponse (res_msg, mMsg);
                        }