[Mono-dev] [PATCH] Add mixed-mode assembly support on Windows (now build with cygwin as well)

Kornél Pál kornelpal at gmail.com
Sat May 3 11:16:23 EDT 2008


Hi,

It wasn't load_aot_module_from_cache, sorry.

Command line:
make[7]: Entering directory `/mono/mcs/class/System'
make all-local
make[8]: Entering directory `/mono/mcs/class/System'
** Warning: System.dll built without parts that depend on: System.Xml.dll
make[8]: Leaving directory `/mono/mcs/class/System'
make[7]: Leaving directory `/mono/mcs/class/System'
make[7]: Entering directory `/mono/mcs/class/System.XML'
make all-local
make[8]: Entering directory `/mono/mcs/class/System.XML'
MONO_PATH="../../class/lib/basic;$MONO_PATH" /mono/mono/runtime/mono-wrapper 
../../class/lib/basic/mcs.exe /codepage:65001  /nologo 
/optimize -d:NET_1_1 -d:ONLY_1_1 -d:BOOTSTRAP_WITH_OLDLIB /debug+ 
/debug:full 
/noconfig -r:mscorlib.dll -r:System.dll -nowarn:0162,0618,0612,0642,1595 -target:library 
 -out:System.Xml.dll `echo System.Xml.XPath/Parser.cs 
Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs | tr '/' 
'\\\\'` @../../build/deps/basic_System.Xml.dll.response

Call stack:
mono_image_basic_init (MonoReflectionAssemblyBuilder *assemblyb)
-> mono_assembly_invoke_load_hook ((MonoAssembly*)assembly);
-> load_aot_module (MonoAssembly *assembly, gpointer user_data)
-> assembly->aot_module = mono_dl_open (aot_name, MONO_DL_LAZY, &err);

The dynamic image has only file name in assembly->image->name that results 
in System.Xml.dll from MS.NET being loaded when MS.NET is in PATH.

Kornél

----- Original Message ----- 
From: "Zoltan Varga" <vargaz at gmail.com>
To: "Kornél Pál" <kornelpal at gmail.com>
Cc: "Jonathan Chambers" <joncham at gmail.com>; 
<mono-devel-list at lists.ximian.com>
Sent: Saturday, May 03, 2008 4:00 PM
Subject: Re: [Mono-dev] [PATCH] Add mixed-mode assembly support on Windows 
(now build with cygwin as well)


>>  I have tracked down the issue. The problem is that
>> "load_aot_module_from_cache" calls that calls "mono_dl_open" that calls
>> "LoadLibrary" with just a file name without a full path. This will result 
>> in
>> MS.NET assemblies being loaded when MS.NET is in PATH. I don't know how
>> load_aot_module_from_cache is supposed to work but I think this is a bug 
>> in
>> load_aot_module_from_cache.
>>
>
> Hi,
>
> load_aot_module_from_cache is only called if the (unsupported) 
> MONO_AOT_CACHE
> env var is set. Also, it calls mono_dl_open () using a full path.
>
>          Zoltan 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: coreefix.diff.txt
Url: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20080503/fca596cf/attachment-0001.txt 


More information about the Mono-devel-list mailing list