[Mono-bugs] [Bug 538854] New: Anonymous Delegate { Anonymous Delegate } ERROR: metadata.c:3201: mono_metadata_token_from_dor: code should not be reached
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Sun Sep 13 21:09:11 EDT 2009
http://bugzilla.novell.com/show_bug.cgi?id=538854
Summary: Anonymous Delegate { Anonymous Delegate } ERROR:
metadata.c:3201: mono_metadata_token_from_dor: code
should not be reached
Classification: Mono
Product: Mono: Runtime
Version: 2.4.x
Platform: x86-64
OS/Version: All
Status: NEW
Severity: Normal
Priority: P5 - None
Component: misc
AssignedTo: mono-bugs at lists.ximian.com
ReportedBy: teravus at gmail.com
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Created an attachment (id=318025)
--> (http://bugzilla.novell.com/attachment.cgi?id=318025)
Log-Stack Trace and abridged source files for review
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1)
Gecko/20090624 Firefox/3.5
It looks like in some cases when an Anonymous Delegate contains another
anonymous delegate and the first one is fired with void delegate (void) using
the BeginInvoke in a static method and you're using Mono.Addins to load
modules, the mono_metadata_token_from_dor asserts on Linux. On windows, it
just freezes. (memory corruption?)
Reproducible: Always
Steps to Reproduce:
I've included the stack trace and abridged source of the areas.
The code that seems to trigger the bug is in SceneCommunicationService.cs. It
happens regardless of whether the source is compiled in Visual Studio and run
on Mono, or if it was compiled with Mono and run on Mono.
The elements to this are as follows,
A static method to call a BeginInvoke on a threadstart (Util.FireAndForget)
An anonymous delegate that references variables in the method that calls it.
(SceneCommunicationService.InformClientToInitateTeleportToLocation)
An anonymous delegate inside that anonymous delegate that takes bool.
Mono.Addins, in this case, I think just points it out.. it probably would
have happened anyway later.
Actual Results:
Asserts on Linux.
Freezes on Windows.
while loading Mono.Addins modules.
Expected Results:
The Anonymous delegates fire as expected.
If I take the Util.FireAndForget out of it, use a named delegate with proper
paramaters and do the BeginInvoke/EndInvoke the bug is not triggered.
--
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list