You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi and thanks for this wonderful gem! When upgrading an HTTP/1.1 connection (e.g. using curl --http2), if the HTTP/1.1 request body passed to HTTP2::Server#upgrade is not empty, the upgrade will fail with the following traceback:
Traceback (most recent call last):
12: from /home/sharon/repo/tipi/lib/tipi.rb:39:in `block (2 levels) in accept_loop'
<snip>
3: from /home/sharon/.gem/gems/http-2-0.11.0/lib/http/2/server.rb:102:in `upgrade'
2: from /home/sharon/.gem/gems/http-2-0.11.0/lib/http/2/stream.rb:102:in `receive'
1: from /home/sharon/.gem/gems/http-2-0.11.0/lib/http/2/stream.rb:321:in `transition'
/home/sharon/.gem/gems/http-2-0.11.0/lib/http/2/stream.rb:604:in `end_stream?': undefined method `include?' for nil:NilClass (NoMethodError)
@noteflakes Did you still need this patch? I've got a PR to finally add this. I didn't use safe navigation so that the ? method returns a boolean (though nil is falsey).
Hi and thanks for this wonderful gem! When upgrading an HTTP/1.1 connection (e.g. using
curl --http2
), if the HTTP/1.1 request body passed toHTTP2::Server#upgrade
is not empty, the upgrade will fail with the following traceback:The fix is trivial:
The fix is just to add the safe navigation operator when checking for
frame[:flags]
, since it's its not set when the body is not empty.The text was updated successfully, but these errors were encountered: