IL2CPP: Handle metadata v24.5 (Unity 2019.4.21-2019.4.24) (#148)
This commit is contained in:
@@ -276,6 +276,13 @@ namespace Il2CppInspector
|
|||||||
CodeRegistration = Image.ReadMappedObject<Il2CppCodeRegistration>(codeRegistration);
|
CodeRegistration = Image.ReadMappedObject<Il2CppCodeRegistration>(codeRegistration);
|
||||||
MetadataRegistration = Image.ReadMappedObject<Il2CppMetadataRegistration>(metadataRegistration);
|
MetadataRegistration = Image.ReadMappedObject<Il2CppMetadataRegistration>(metadataRegistration);
|
||||||
|
|
||||||
|
// genericAdjustorThunks was inserted before invokerPointersCount in 24.5 and 27.1
|
||||||
|
// pointer expected if we need to bump version
|
||||||
|
if (Image.Version == 24.4 && CodeRegistration.invokerPointersCount > 0x100000) {
|
||||||
|
Image.Version = 24.5;
|
||||||
|
CodeRegistration = Image.ReadMappedObject<Il2CppCodeRegistration>(codeRegistration);
|
||||||
|
}
|
||||||
|
|
||||||
// Plugin hook to pre-process binary
|
// Plugin hook to pre-process binary
|
||||||
isModified |= PluginHooks.PreProcessBinary(this).IsStreamModified;
|
isModified |= PluginHooks.PreProcessBinary(this).IsStreamModified;
|
||||||
|
|
||||||
|
|||||||
@@ -45,9 +45,9 @@ namespace Il2CppInspector
|
|||||||
public ulong invokerPointers;
|
public ulong invokerPointers;
|
||||||
|
|
||||||
// Removed in metadata v27
|
// Removed in metadata v27
|
||||||
[Version(Max = 24.4)]
|
[Version(Max = 24.5)]
|
||||||
public long customAttributeCount;
|
public long customAttributeCount;
|
||||||
[Version(Max = 24.4)]
|
[Version(Max = 24.5)]
|
||||||
public ulong customAttributeGenerators;
|
public ulong customAttributeGenerators;
|
||||||
|
|
||||||
// Removed in metadata v23
|
// Removed in metadata v23
|
||||||
@@ -210,7 +210,7 @@ namespace Il2CppInspector
|
|||||||
|
|
||||||
public class Il2CppGenericClass
|
public class Il2CppGenericClass
|
||||||
{
|
{
|
||||||
[Version(Max = 24.4)]
|
[Version(Max = 24.5)]
|
||||||
public long typeDefinitionIndex; /* the generic type definition */
|
public long typeDefinitionIndex; /* the generic type definition */
|
||||||
[Version(Min = 27)]
|
[Version(Min = 27)]
|
||||||
public ulong type; // Il2CppType* /* the generic type definition */
|
public ulong type; // Il2CppType* /* the generic type definition */
|
||||||
|
|||||||
@@ -100,13 +100,13 @@ namespace Il2CppInspector
|
|||||||
[Version(Min = 16)]
|
[Version(Min = 16)]
|
||||||
public int assembliesCount;
|
public int assembliesCount;
|
||||||
|
|
||||||
[Version(Min = 19, Max = 24.4)]
|
[Version(Min = 19, Max = 24.5)]
|
||||||
public int metadataUsageListsOffset; // Il2CppMetadataUsageList
|
public int metadataUsageListsOffset; // Il2CppMetadataUsageList
|
||||||
[Version(Min = 19, Max = 24.4)]
|
[Version(Min = 19, Max = 24.5)]
|
||||||
public int metadataUsageListsCount;
|
public int metadataUsageListsCount;
|
||||||
[Version(Min = 19, Max = 24.4)]
|
[Version(Min = 19, Max = 24.5)]
|
||||||
public int metadataUsagePairsOffset; // Il2CppMetadataUsagePair
|
public int metadataUsagePairsOffset; // Il2CppMetadataUsagePair
|
||||||
[Version(Min = 19, Max = 24.4)]
|
[Version(Min = 19, Max = 24.5)]
|
||||||
public int metadataUsagePairsCount;
|
public int metadataUsagePairsCount;
|
||||||
[Version(Min = 19)]
|
[Version(Min = 19)]
|
||||||
public int fieldRefsOffset; // Il2CppFieldRef
|
public int fieldRefsOffset; // Il2CppFieldRef
|
||||||
@@ -240,7 +240,7 @@ namespace Il2CppInspector
|
|||||||
public int customAttributeIndex;
|
public int customAttributeIndex;
|
||||||
|
|
||||||
public int byvalTypeIndex;
|
public int byvalTypeIndex;
|
||||||
[Version(Max = 24.4)]
|
[Version(Max = 24.5)]
|
||||||
public int byrefTypeIndex;
|
public int byrefTypeIndex;
|
||||||
|
|
||||||
public int declaringTypeIndex;
|
public int declaringTypeIndex;
|
||||||
|
|||||||
Reference in New Issue
Block a user