[Mono-dev] PATCH: Bug #76757, new AppDomains inherit current loaded assemblies

Brian Crowell mono-devel at fluggo.com
Sat Jun 17 19:31:22 EDT 2006

The attached patch (create-empty-appdomain.patch) fixes bug #76757. New domains 
are created with only the corlib loaded, and the cross-domain code now handles 
the type differences correctly.

An important thing to note about this patch is that it disables a lot of code in 
mono/metadata/marshal.c relating to the fast cross-domain wrappers. Much of that 
code made bad assumptions about the availability of types in other domains and 
the ability to make equality comparisons by pointers. The patch forces all 
cross-domain calls to go through the CrossAppDomainChannel, which has also been 
fixed in this regard.

The attached marshal.diff shows another strategy I thought about taking. This 
tries to get the cross-domain wrappers to correctly understand type equality 
across domains. I abandoned it because it was too much effort, but anyone 
interested can look at it and see what I was trying to do. That diff is based on 

Please look at this and approve it for inclusion. I can't commit things, nor 
would I in this case without having someone look into #76811:


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: create-empty-appdomain.patch
Url: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20060617/7e93709c/attachment.pl 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: marshal.diff
Url: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20060617/7e93709c/attachment-0001.pl 

More information about the Mono-devel-list mailing list