about summary refs log tree commit homepage
path: root/lib/rainbows/rev/client.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rainbows/rev/client.rb')
-rw-r--r--lib/rainbows/rev/client.rb10
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/rainbows/rev/client.rb b/lib/rainbows/rev/client.rb
index bc85fbd..296a33d 100644
--- a/lib/rainbows/rev/client.rb
+++ b/lib/rainbows/rev/client.rb
@@ -16,6 +16,10 @@ module Rainbows
         @deferred = nil
       end
 
+      def want_more
+        enable unless enabled?
+      end
+
       def quit
         super
         close if @deferred.nil? && @_write_buffer.empty?
@@ -143,13 +147,13 @@ module Rainbows
         when :close
           close if @_write_buffer.empty?
         when :headers
-          if @hp.parse
-            app_call
-          else
+          if @buf.empty?
             unless enabled?
               enable
               KATO[self] = Time.now
             end
+          else
+            on_read("")
           end
         end
         rescue => e