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

◆ Inflate() [1/2]

unsafe bool System.Net.WebSockets.Compression.WebSocketInflater.Inflate ( Span< byte > output,
out int written )
inline

Definition at line 87 of file WebSocketInflater.cs.

88 {
89 if (_stream == null)
90 {
92 }
93 if (_available > 0 && output.Length > 0)
94 {
95 int num;
96 fixed (byte* ptr = _buffer)
97 {
98 _stream.NextIn = (IntPtr)(ptr + _position);
99 _stream.AvailIn = (uint)_available;
100 written = Inflate(_stream, output, ZLibNative.FlushCode.NoFlush);
101 num = _available - (int)_stream.AvailIn;
102 }
103 _position += num;
104 _available -= num;
105 }
106 else
107 {
108 written = 0;
109 }
110 if (_available == 0)
111 {
113 if (!_endOfMessage)
114 {
115 return true;
116 }
117 return Finish(output, ref written);
118 }
119 return false;
120 }
unsafe bool Inflate(Span< byte > output, out int written)
int Length
Definition Span.cs:70

References System.Net.WebSockets.Compression.WebSocketInflater._available, System.Net.WebSockets.Compression.WebSocketInflater._buffer, System.Net.WebSockets.Compression.WebSocketInflater._endOfMessage, System.Net.WebSockets.Compression.WebSocketInflater._position, System.Net.WebSockets.Compression.WebSocketInflater._stream, System.Net.WebSockets.Compression.WebSocketInflater.CreateInflater(), System.IO.Compression.Finish, System.Net.WebSockets.Compression.WebSocketInflater.Inflate(), System.Span< T >.Length, and System.Net.WebSockets.Compression.WebSocketInflater.ReleaseBuffer().

Referenced by System.Net.WebSockets.Compression.WebSocketInflater.Finish(), System.Net.WebSockets.Compression.WebSocketInflater.Inflate(), System.Net.WebSockets.Compression.WebSocketInflater.IsFinished(), and System.Net.WebSockets.ManagedWebSocket._003CReceiveAsyncPrivate_003Ed__63< TResult >.MoveNext().