From df5525854e89f9da2fe3fdf1fb9a5b34ae49ba10 Mon Sep 17 00:00:00 2001 From: Loic Nageleisen Date: Tue, 19 Sep 2017 13:59:29 +0200 Subject: [PATCH] Factor end of headers processing in --- lib/nanoserve.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/nanoserve.rb b/lib/nanoserve.rb index 57bb2ba..5410521 100644 --- a/lib/nanoserve.rb +++ b/lib/nanoserve.rb @@ -65,9 +65,9 @@ module NanoServe buf = +'' loop do line = conn.readline - break if line.chomp == '' req << line buf << line if logger.debug? + break if req.headers? end logger.debug "request:\n" + buf.gsub(/^/, ' ') @@ -104,6 +104,10 @@ module NanoServe end end + def headers? + @sep + end + REQ_RE = %r{(?[A-Z]+)\s+(?\S+)\s+(?HTTP/\d+.\d+)$} def parse_request(str)