fix metadata usage validity checks
This commit is contained in:
@@ -27,6 +27,8 @@ namespace Il2CppInspector
|
|||||||
public int SourceIndex { get; }
|
public int SourceIndex { get; }
|
||||||
public ulong VirtualAddress { get; private set; }
|
public ulong VirtualAddress { get; private set; }
|
||||||
|
|
||||||
|
public readonly bool IsValid => Type != 0;
|
||||||
|
|
||||||
public MetadataUsage(MetadataUsageType type, int sourceIndex, ulong virtualAddress = 0) {
|
public MetadataUsage(MetadataUsageType type, int sourceIndex, ulong virtualAddress = 0) {
|
||||||
Type = type;
|
Type = type;
|
||||||
SourceIndex = sourceIndex;
|
SourceIndex = sourceIndex;
|
||||||
|
|||||||
@@ -259,7 +259,7 @@ namespace Il2CppInspector.Reflection
|
|||||||
MetadataUsage[] vt = Assembly.Model.Package.GetVTable(Definition);
|
MetadataUsage[] vt = Assembly.Model.Package.GetVTable(Definition);
|
||||||
MethodBase[] res = new MethodBase[vt.Length];
|
MethodBase[] res = new MethodBase[vt.Length];
|
||||||
for (int i = 0; i < vt.Length; i++) {
|
for (int i = 0; i < vt.Length; i++) {
|
||||||
if (vt[i] != null)
|
if (vt[i].IsValid)
|
||||||
res[i] = Assembly.Model.GetMetadataUsageMethod(vt[i]);
|
res[i] = Assembly.Model.GetMetadataUsageMethod(vt[i]);
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
|
|||||||
Reference in New Issue
Block a user