public void IncrementWindowSize(IHttp2Stream stream, int delta) { Debug.Assert(_ctx is object && _ctx.Executor.InEventLoop); IFlowState state = GetState(stream); // Just add the delta to the stream-specific initial window size so that the next time the window // expands it will grow to the new initial size. state.IncrementInitialStreamWindow(delta); _ = state.WriteWindowUpdateIfNeeded(); }
public bool Visit(IHttp2Stream stream) { try { // Increment flow control window first so state will be consistent if overflow is detected. IFlowState state = _controller.GetState(stream); state.IncrementFlowControlWindows(_delta); state.IncrementInitialStreamWindow(_delta); } catch (StreamException e) { if (_compositeException is null) { _compositeException = new CompositeStreamException(e.Error, 4); } _compositeException.Add(e); } return(true); }