namespace System.Runtime.Remoting.Proxies
{
#pragma warning disable 169, 649
+ [StructLayout (LayoutKind.Sequential)]
internal class TransparentProxy {
public RealProxy _rp;
IntPtr _class;
#pragma warning restore 169, 649
[ComVisible (true)]
+ [StructLayout (LayoutKind.Sequential)]
public abstract class RealProxy {
// other classes visible to the runtime
// derive from this class so keep these locals
MonoMethodMessage mMsg = (MonoMethodMessage) msg;
mMsg.LogicalCallContext = CallContext.CreateLogicalCallContext (true);
CallType call_type = mMsg.CallType;
-#if MOONLIGHT
- bool is_remproxy = false;
-#else
bool is_remproxy = (rp is RemotingProxy);
-#endif
out_args = null;
IMethodReturnMessage res_msg = null;
// Check for constructor msg
if (mMsg.MethodBase.IsConstructor)
{
-#if !MOONLIGHT
if (is_remproxy)
res_msg = (IMethodReturnMessage) (rp as RemotingProxy).ActivateRemoteObject ((IMethodMessage) msg);
else
-#endif
msg = new ConstructionCall (rp.GetProxiedType ());
}
}
if (res_msg.LogicalCallContext != null && res_msg.LogicalCallContext.HasInfo)
- CallContext.UpdateCurrentCallContext (res_msg.LogicalCallContext);
+ CallContext.UpdateCurrentLogicalCallContext (res_msg.LogicalCallContext);
exc = res_msg.Exception;