Fix IDA writeUsages for metadata <19
This fixes a NullReferenceException that was being thrown for IDA script generation for metadata 16 files (e.g. as generated by Il2Cpp v5.3.0f4).
This commit is contained in:
@@ -107,6 +107,11 @@ def MakeFunction(start, end):
|
||||
}
|
||||
|
||||
private void writeUsages() {
|
||||
if (model.Package.MetadataUsages == null) {
|
||||
/* Version < 19 - no MetadataUsages table */
|
||||
return;
|
||||
}
|
||||
|
||||
foreach (var usage in model.Package.MetadataUsages) {
|
||||
var address = usage.VirtualAddress;
|
||||
var name = model.GetMetadataUsageName(usage);
|
||||
@@ -119,8 +124,7 @@ def MakeFunction(start, end):
|
||||
if (usage.Type == MetadataUsageType.MethodDef || usage.Type == MetadataUsageType.MethodRef) {
|
||||
var method = model.GetMetadataUsageMethod(usage);
|
||||
writeComment(address, method);
|
||||
}
|
||||
else if (usage.Type != MetadataUsageType.StringLiteral) {
|
||||
} else if (usage.Type != MetadataUsageType.StringLiteral) {
|
||||
var type = model.GetMetadataUsageType(usage);
|
||||
writeComment(address, type);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user