[Mono-devel-list] Problems with the new jit and proxies

LSG slluis at hotmail.com
Tue May 13 17:08:58 EDT 2003


Pedro,

Your sample doesn't work in MS.NET either, so I can't fix the bug :-). The
source of the problem is that the interfaces are defined in different
assemblies in the client and the server. Usually this is not a problem if
proxies are based on classes (I've just fixed an issue regarding this), but
it seems that with interfaces it doesn't work.

- Lluis.

----- Original Message ----- 
From: <yoros at wanadoo.es>
To: "dietmar" <dietmar at ximian.com>
Cc: "Lluis Sanchez" <lluis at ideary.com>; <mono-devel-list at ximian.com>
Sent: Friday, May 09, 2003 6:27 PM
Subject: Re: [Mono-devel-list] Problems with the new jit and proxies


> On Fri, May 09, 2003 at 09:51:18AM +0200, dietmar wrote:
> > On Fri, 2003-05-09 at 01:49, Lluis Sanchez wrote:
> > > Hi,
> > >
> > > I've been tracking down a couple of problems that mini has with
transparent
> > > proxies:
> > >
> > > 1) It crashes when creating a proxy based on an interface. This is
because
> > > the method mono_jit_create_remoting_trampoline in mini.c checks if the
> > > provided method is from a marshalbyref or object class. If it is not,
it
> > > does not create the remoting trampoline. Since the method is from an
> > > interface, the trampoline is not created and it fails. If I remove the
check
> > > it works. In the old jit this check wasn't there, but I guess there is
a
> > > good reason for it.
> >
> > I thought I already fixed that yesterday:
> >
> > if ((method->flags & METHOD_ATTRIBUTE_ABSTRACT) ...
>
> Dietmar, I updated CVS and the testcase I had for this bug worked
> perfectly but I created a new example, when a client application sends
> a local object to a remote object. The remote object receives an
> interface. This breaks if the dlls needed by the client and the server
> are separated in two directories (with the client exe and the server
> exe). I send an example.
>
> Regards,
>
>     Pedro
>
> -- 
> Pedro Martínez Juliá
> \  yoros at terra.es
> )|    yoros at wanadoo.es
> /        http://yoros.cjb.net
> Socio HispaLinux #311
> Usuario Linux #275438 - http://counter.li.org
> GnuPG public information:  pub  1024D/74F1D3AC
> Key fingerprint = 8431 7B47 D2B4 5A46 5F8E  534F 588B E285 74F1 D3AC
>



More information about the Mono-devel-list mailing list