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

◆ InitializePEHeaders()

void System.Reflection.PortableExecutable.PEReader.InitializePEHeaders ( )
inlineprivate

Definition at line 174 of file PEReader.cs.

175 {
176 StreamConstraints constraints;
177 Stream stream = GetPEImage().GetStream(out constraints);
179 if (constraints.GuardOpt != null)
180 {
181 lock (constraints.GuardOpt)
182 {
183 value = ReadPEHeadersNoLock(stream, constraints.ImageStart, constraints.ImageSize, IsLoadedImage);
184 }
185 }
186 else
187 {
188 value = ReadPEHeadersNoLock(stream, constraints.ImageStart, constraints.ImageSize, IsLoadedImage);
189 }
191 }
Stream GetStream(out StreamConstraints constraints)
static PEHeaders ReadPEHeadersNoLock(Stream stream, long imageStartPosition, int imageSize, bool isLoadedImage)
Definition PEReader.cs:193
static int CompareExchange(ref int location1, int value, int comparand)

References System.Reflection.PortableExecutable.PEReader._lazyPEHeaders, System.Threading.Interlocked.CompareExchange(), System.Reflection.PortableExecutable.PEReader.GetPEImage(), System.Reflection.Internal.MemoryBlockProvider.GetStream(), System.Reflection.Internal.StreamConstraints.GuardOpt, System.Reflection.Internal.StreamConstraints.ImageSize, System.Reflection.Internal.StreamConstraints.ImageStart, System.Reflection.PortableExecutable.PEReader.IsLoadedImage, System.Reflection.PortableExecutable.PEReader.ReadPEHeadersNoLock(), System.stream, and System.value.

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