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

◆ GetMetadataBlock()

AbstractMemoryBlock System.Reflection.PortableExecutable.PEReader.GetMetadataBlock ( )
inlineprivate

Definition at line 212 of file PEReader.cs.

213 {
214 if (!HasMetadata)
215 {
217 }
218 if (_lazyMetadataBlock == null)
219 {
221 if (Interlocked.CompareExchange(ref _lazyMetadataBlock, memoryBlock, null) != null)
222 {
223 memoryBlock.Dispose();
224 }
225 }
226 return _lazyMetadataBlock;
227 }
static string PEImageDoesNotHaveMetadata
Definition SR.cs:108
Definition SR.cs:7
static int CompareExchange(ref int location1, int value, int comparand)

References System.Reflection.PortableExecutable.PEReader._lazyMetadataBlock, System.Threading.Interlocked.CompareExchange(), System.Reflection.Internal.AbstractMemoryBlock.Dispose(), System.Reflection.Internal.MemoryBlockProvider.GetMemoryBlock(), System.Reflection.PortableExecutable.PEReader.GetPEImage(), System.Reflection.PortableExecutable.PEReader.HasMetadata, System.Reflection.PortableExecutable.PEHeaders.MetadataSize, System.Reflection.PortableExecutable.PEHeaders.MetadataStartOffset, and System.SR.PEImageDoesNotHaveMetadata.

Referenced by System.Reflection.PortableExecutable.PEReader.GetMetadata().