2007-07-17 Jb Evain <jbevain@novell.com>
+ * Mono.Cecil/AggressiveReflectionReader.cs:
+ Add some gards against zeroed tokens.
+
* Mono.Cecil.Metadata/Utilities.cs:
Return zero instead of throwing on invalid tags.
Allow Cecil to read assemblies partially broken
DeclSecurityRow dsRow = dsTable [i];
SecurityDeclaration dec = BuildSecurityDeclaration (dsRow);
+ if (dsRow.Parent.RID == 0)
+ continue;
+
IHasSecurity owner = null;
switch (dsRow.Parent.TokenType) {
case TokenType.Assembly :
for (int i = 0; i < caTable.Rows.Count; i++) {
CustomAttributeRow caRow = caTable [i];
MethodReference ctor;
+
+ if (caRow.Type.RID == 0)
+ continue;
+
if (caRow.Type.TokenType == TokenType.Method)
ctor = GetMethodDefAt (caRow.Type.RID);
else