Skip to content

Commit abfd8cf

Browse files
committed
Ensure upgrade and tunnel responses correctly exit the request loop.
1 parent 6f2d6e1 commit abfd8cf

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

lib/async/http/protocol/http1/server.rb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,8 @@ def each(task: Task.current)
7171
request = nil unless request.body
7272
response = nil
7373

74-
body.call(stream)
74+
# We must return here as no further request processing can be done:
75+
return body.call(stream)
7576
else
7677
write_response(@version, response.status, response.headers)
7778

@@ -82,7 +83,8 @@ def each(task: Task.current)
8283
request = nil unless request.body
8384
response = nil
8485

85-
body.call(stream)
86+
# We must return here as no further request processing can be done:
87+
return body.call(stream)
8688
else
8789
head = request.head?
8890
version = request.version

0 commit comments

Comments
 (0)