Selaa lähdekoodia

2009-07-28 Jb Evain <[email protected]>

	* Mono.Cecil/AssemblyStripper.cs: Make all methods share
	the same body.
	


svn path=/trunk/mcs/; revision=138791
Jb Evain 16 vuotta sitten
vanhempi
sitoutus
ff389637a3

+ 6 - 0
mcs/class/Mono.Cecil/ChangeLog

@@ -1,3 +1,9 @@
+2009-07-28  Jb Evain  <[email protected]>
+
+	* Mono.Cecil/AssemblyStripper.cs: Make all methods share
+	the same body.
+	
+
 2009-07-16  Jb Evain  <[email protected]>
 
 	* Mono.Cecil/AssemblyFactory.cs

+ 7 - 1
mcs/class/Mono.Cecil/Mono.Cecil/AssemblyStripper.cs

@@ -141,6 +141,8 @@ namespace Mono.Cecil {
 			if (methodTable == null)
 				return;
 
+			RVA method_rva = RVA.Zero;
+
 			for (int i = 0; i < methodTable.Rows.Count; i++) {
 				MethodRow methodRow = methodTable[i];
 
@@ -148,7 +150,11 @@ namespace Mono.Cecil {
 
 				MethodDefinition method = (MethodDefinition) assembly.MainModule.LookupByToken (methodToken);
 
-				methodRow.RVA = reflection_writer.CodeWriter.WriteMethodBody (method);
+				method_rva = method_rva != RVA.Zero
+					? method_rva
+					: reflection_writer.CodeWriter.WriteMethodBody (method);
+
+				methodRow.RVA = method_rva;
 			}
 		}