about summary refs log tree commit homepage
path: root/lib/rainbows/base.rb
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2009-10-05 20:16:18 -0700
committerEric Wong <normalperson@yhbt.net>2009-10-05 20:16:35 -0700
commit09535c1bd412bd66f93723c2c1aa7aacc2e091c3 (patch)
treeb31bf862247995887a41f06d23e62b416bbf461a /lib/rainbows/base.rb
parente4057cf951a32c3a29b66dae1c1abea7989889e8 (diff)
downloadrainbows-09535c1bd412bd66f93723c2c1aa7aacc2e091c3.tar.gz
Ensure we reset the per-thread time Thread.current[:t] with each
connection so we don't timeout long-lived connections.
Diffstat (limited to 'lib/rainbows/base.rb')
-rw-r--r--lib/rainbows/base.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/rainbows/base.rb b/lib/rainbows/base.rb
index 07fb584..11c8c7c 100644
--- a/lib/rainbows/base.rb
+++ b/lib/rainbows/base.rb
@@ -24,7 +24,8 @@ module Rainbows
       env = {}
       remote_addr = TCPSocket === client ? client.peeraddr.last : LOCALHOST
 
-      begin
+      begin # loop
+        Thread.current[:t] = Time.now
         while ! hp.headers(env, buf)
           buf << client.readpartial(CHUNK_SIZE)
         end