aboutsummaryrefslogtreecommitdiffstats
path: root/lib/plum/rack
diff options
context:
space:
mode:
authorKazuki Yamaguchi <k@rhe.jp>2015-11-13 09:03:44 +0900
committerKazuki Yamaguchi <k@rhe.jp>2015-11-13 09:03:44 +0900
commit963925aed0bca245f390dbdffc6c5308b88bc683 (patch)
treecbd76d2db899aff26f202cb2314aee5893ea3baf /lib/plum/rack
parent0e9f859c18d78a3c34d493e9d673e06ab10c311a (diff)
parent014ff6d424f5ad863a099428d865bb74c857b36e (diff)
downloadplum-963925aed0bca245f390dbdffc6c5308b88bc683.tar.gz
Merge branch 'master' of github.com:rhenium/plum
Diffstat (limited to 'lib/plum/rack')
-rw-r--r--lib/plum/rack/session.rb7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/plum/rack/session.rb b/lib/plum/rack/session.rb
index 0d7023e..eddb036 100644
--- a/lib/plum/rack/session.rb
+++ b/lib/plum/rack/session.rb
@@ -50,6 +50,7 @@ module Plum
@plum.on(:data) { |stream, d|
reqs[stream][:data] << d # TODO: store to file?
+ check_window(stream)
}
@plum.on(:end_stream) { |stream|
@@ -63,6 +64,12 @@ module Plum
}
end
+ def check_window(stream)
+ ws = @plum.local_settings[:initial_window_size]
+ stream.window_update(ws) if stream.recv_remaining_window < (ws / 2)
+ @plum.window_update(ws) if @plum.recv_remaining_window < (ws / 2)
+ end
+
def send_body(stream, body)
begin
if body.is_a?(IO)