[Mono-bugs] [Bug 80004][Maj] New - Cecil saves public key token as public key (not token)
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Tue Nov 21 18:38:33 EST 2006
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by jones.noamle at gmail.com.
http://bugzilla.ximian.com/show_bug.cgi?id=80004
--- shadow/80004 2006-11-21 18:38:33.000000000 -0500
+++ shadow/80004.tmp.28057 2006-11-21 18:38:33.000000000 -0500
@@ -0,0 +1,57 @@
+Bug#: 80004
+Product: Mono: Class Libraries
+Version: 1.2
+OS: Windows XP
+OS Details: Windows XP Professional
+Status: NEW
+Resolution:
+Severity:
+Priority: Major
+Component: Mono.Cecil
+AssignedTo: mono at evain.net
+ReportedBy: jones.noamle at gmail.com
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: Cecil saves public key token as public key (not token)
+
+Description of Problem:
+
+When assembly A is saved by Cecil and it references an assembly B with
+its public key token, Cecil actually saves the public key token as a
+COMPLETE PUBLIC KEY and not as a token.
+
+Steps to reproduce the problem:
+1. Open an assembly using Mono.Cecil.AssemblyFactory.GetAssembly
+2. use assembly.MainModule.Import(type) for a type that uses a NEW strong-
+named assembly, that was previously not referenced by the opened
+assembly. (In my case I added some IL code to a method in the opened
+assembly, the added IL instruction was a call to a method in the
+previously un-referenced assembly.
+ I used
+ System.Reflection.MethodInfo new_method typeof
+(new_assembly).GetMethod("method_name"))
+ Mono.Cecil.MethodReference imported_enter =
+assembly.MainModule.Import(new_method).
+ I then accessed some method in the opened assembly and added an IL
+instruction to call new_method.
+3. save the assembly with Mono.Cecil.AssemblyFactory.SaveAssembly
+4. Use ildasm on the created assembly to see the manifest
+
+Actual Results:
+in the manifest, for the referenced assembly it says ".publickey" and
+then the public key TOKEN appears.
+The created assembly causes an exception on .NET 2.0 ("invalid assembly
+public key").
+
+Expected Results:
+in the manifest, for the referenced assembly it should
+say ".publickeytoken" and then the public key token should appear.
+
+
+How often does this happen?
+
+
+Additional Information:
+I'm not absolutely sure this is a bug. EMAIL me if it can't be reproduce.
More information about the mono-bugs
mailing list