From 89f948aeaef34114ec61291ff8ffbebcf85a748e Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 11 Jan 2011 16:01:20 -0800 Subject: event_machine: buffer reads when waiting for async.callback We cannot trigger on_read events and invoke the HTTP parser and modify @env while we're waiting for an application to run async.callback. We also need to clear (and *maybe* re-set) @deferred if we're writing from async.callback --- lib/rainbows/ev_core.rb | 1 + 1 file changed, 1 insertion(+) (limited to 'lib/rainbows/ev_core.rb') diff --git a/lib/rainbows/ev_core.rb b/lib/rainbows/ev_core.rb index 0bdaab3..a3bf50f 100644 --- a/lib/rainbows/ev_core.rb +++ b/lib/rainbows/ev_core.rb @@ -22,6 +22,7 @@ module Rainbows::EvCore alive = headers.include?(Content_Length) || !!(%r{\Achunked\z}i =~ headers[Transfer_Encoding]) end + @deferred = nil ev_write_response(status, headers, body, alive) end -- cgit v1.2.3-24-ge0c7