Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ReadMetadataTableHeader()

void System.Reflection.Metadata.MetadataReader.ReadMetadataTableHeader ( ref BlobReader reader,
out HeapSizes heapSizes,
out int[] metadataTableRowCounts,
out TableMask sortedTables )
inlineprivate

Definition at line 512 of file MetadataReader.cs.

513 {
514 if (reader.RemainingBytes < 24)
515 {
516 throw new BadImageFormatException(System.SR.MetadataTableHeaderTooSmall);
517 }
518 reader.ReadUInt32();
519 reader.ReadByte();
520 reader.ReadByte();
521 heapSizes = (HeapSizes)reader.ReadByte();
522 reader.ReadByte();
523 ulong num = reader.ReadUInt64();
524 sortedTables = (TableMask)reader.ReadUInt64();
525 ulong num2 = 71811071505072127uL;
526 if ((num & ~num2) != 0L)
527 {
528 throw new BadImageFormatException(System.SR.Format(System.SR.UnknownTables, num));
529 }
530 if (_metadataStreamKind == MetadataStreamKind.Compressed && (num & 0x804800A8u) != 0L)
531 {
532 throw new BadImageFormatException(System.SR.IllegalTablesInCompressedMetadataStream);
533 }
535 if ((heapSizes & HeapSizes.ExtraData) == HeapSizes.ExtraData)
536 {
537 reader.ReadUInt32();
538 }
539 }
readonly MetadataStreamKind _metadataStreamKind
static int[] ReadMetadataTableRowCounts(ref BlobReader memReader, ulong presentTableMask)
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string UnknownTables
Definition SR.cs:62
static string MetadataTableHeaderTooSmall
Definition SR.cs:94
static string IllegalTablesInCompressedMetadataStream
Definition SR.cs:64
Definition SR.cs:7

References System.Reflection.Metadata.MetadataReader._metadataStreamKind, System.SR.Format(), System.SR.IllegalTablesInCompressedMetadataStream, System.L, System.SR.MetadataTableHeaderTooSmall, System.Reflection.Metadata.MetadataReader.ReadMetadataTableRowCounts(), and System.SR.UnknownTables.

Referenced by System.Reflection.Metadata.MetadataReader.MetadataReader().