terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches

◆ WriteByte()

unsafe override void System.IO.UnmanagedMemoryStream.WriteByte ( byte value)
inlinevirtualinherited

Reimplemented from System.IO.Stream.

Definition at line 446 of file UnmanagedMemoryStream.cs.

447 {
448 this.EnsureNotClosed();
449 this.EnsureWriteable();
450 long num = 0L;
451 long num3;
452 long num2 = Interlocked.Read(num3);
453 long capacity = this._capacity;
454 if (this._buffer == null)
455 {
456 byte* mem = this._mem;
457 long num4 = Interlocked.Exchange(num2, num);
458 }
459 SafeBuffer buffer = this._buffer;
460 if (buffer != null)
461 {
464 long offset = this._offset;
465 long num5 = 0L;
466 int num6 = 11;
467 if (buffer != null)
468 {
469 this._buffer.ReleasePointer();
470 }
471 if (num5 != 0L)
472 {
473 throw new OutOfMemoryException();
474 }
475 if (num6 != 0)
476 {
477 return;
478 }
479 }
480 byte* mem2 = this._mem;
481 mem2->m_value = value;
482 }
class f__AnonymousType0<< Count > j__TPar
static int Exchange(int location1, int value)
static long Read(long location)

References System.IO.UnmanagedMemoryStream._buffer, System.IO.UnmanagedMemoryStream._capacity, System.IO.UnmanagedMemoryStream._mem, System.IO.UnmanagedMemoryStream._offset, System.capacity, System.IO.UnmanagedMemoryStream.EnsureNotClosed(), System.IO.UnmanagedMemoryStream.EnsureWriteable(), System.Threading.Interlocked.Exchange(), j__TPar, System.L, System.offset, System.Runtime.CompilerServices.RuntimeHelpers.PrepareConstrainedRegions(), System.Threading.Interlocked.Read(), System.Runtime.InteropServices.SafeBuffer.ReleasePointer(), and System.value.