[macruby-changes] [4285] ControlTower/trunk/lib/control_tower/rack_socket.rb

source_changes at macosforge.org source_changes at macosforge.org
Fri Jun 25 15:51:43 PDT 2010


Revision: 4285
          http://trac.macosforge.org/projects/ruby/changeset/4285
Author:   lsansonetti at apple.com
Date:     2010-06-25 15:51:43 -0700 (Fri, 25 Jun 2010)
Log Message:
-----------
fix 2 bugs

Modified Paths:
--------------
    ControlTower/trunk/lib/control_tower/rack_socket.rb

Modified: ControlTower/trunk/lib/control_tower/rack_socket.rb
===================================================================
--- ControlTower/trunk/lib/control_tower/rack_socket.rb	2010-06-25 22:51:40 UTC (rev 4284)
+++ ControlTower/trunk/lib/control_tower/rack_socket.rb	2010-06-25 22:51:43 UTC (rev 4285)
@@ -30,8 +30,9 @@
         connection = @socket.accept
 
         @request_queue.async(@request_group) do
+          env = prepare_environment
           begin
-            request_data = parse!(connection, prepare_environment)
+            request_data = parse!(connection, env)
             if request_data
               request_data['REMOTE_ADDR'] = connection.addr[3]
               response_data = @server.handle_request(request_data)
@@ -39,7 +40,7 @@
                 connection.write chunk
               end
             else
-              $stderr.puts "Error: No request data receieved!"
+              $stderr.puts "Error: No request data received!"
             end
           rescue EOFError, Errno::ECONNRESET, Errno::EPIPE, Errno::EINVAL
             $stderr.puts "Error: Connection terminated!"
@@ -47,7 +48,8 @@
             $stderr.puts "Error: Problem transmitting data -- #{e.inspect}"
           ensure
             # We should clean up after our tempfile, if we used one.
-            unlink env['rack.input'] if env['rack.input'].class == Tempfile
+            input = env['rack.input']
+            unlink input if input.class == Tempfile
             connection.close rescue nil
           end
         end
@@ -96,7 +98,7 @@
         if parsing_headers
           data.appendData(incoming_bytes)
           nread = parser.parseData(data, forEnvironment: env, startingAt: nread)
-          if parser.finished
+          if parser.finished == 1
             parsing_headers = false # We're done, now on to receiving the body
             content_uploaded = env['rack.input'].first.length
             content_length = env['CONTENT_LENGTH'].to_i
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20100625/fc7a8c6b/attachment-0001.html>


More information about the macruby-changes mailing list