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

◆ ProcessWindowUpdateFrame()

void System.Net.Http.Http2Connection.ProcessWindowUpdateFrame ( FrameHeader frameHeader)
inlineprivate

Definition at line 2391 of file Http2Connection.cs.

2392 {
2393 if (frameHeader.PayloadLength != 4)
2394 {
2396 }
2397 int num = BinaryPrimitives.ReadInt32BigEndian(_incomingBuffer.ActiveSpan) & 0x7FFFFFFF;
2398 if (System.Net.NetEventSource.Log.IsEnabled())
2399 {
2400 Trace($"{frameHeader}. {"amount"}={num}", "ProcessWindowUpdateFrame");
2401 }
2402 if (num == 0)
2403 {
2405 }
2406 _incomingBuffer.Discard(frameHeader.PayloadLength);
2407 if (frameHeader.StreamId == 0)
2408 {
2410 }
2411 else
2412 {
2413 GetStream(frameHeader.StreamId)?.OnWindowUpdate(num);
2414 }
2415 }
static int ReadInt32BigEndian(ReadOnlySpan< byte > source)
System.Net.ArrayBuffer _incomingBuffer
override void Trace(string message, [CallerMemberName] string memberName=null)
readonly CreditManager _connectionWindow
Http2Stream GetStream(int streamId)
static readonly System.Net.NetEventSource Log

References System.Net.Http.Http2Connection._connectionWindow, System.Net.Http.Http2Connection._incomingBuffer, System.Net.Http.CreditManager.AdjustCredit(), System.Net.Http.Http2Connection.GetStream(), System.Net.NetEventSource.Log, System.Net.Http.Http2Connection.Http2Stream.OnWindowUpdate(), System.Buffers.Binary.BinaryPrimitives.ReadInt32BigEndian(), System.Net.Http.Http2Connection.ThrowProtocolError(), and System.Net.Http.Http2Connection.Trace().

Referenced by System.Net.Http.Http2Connection.ProcessIncomingFramesAsync().