From 235438aca43c02bf886b8daa18c0d2de4d37dd0d Mon Sep 17 00:00:00 2001 From: Wesley Beary Date: Fri, 2 Oct 2009 22:29:58 -0700 Subject: [PATCH] don't parse head requests that are errors --- lib/fog/connection.rb | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/lib/fog/connection.rb b/lib/fog/connection.rb index f3f98accd..751935297 100644 --- a/lib/fog/connection.rb +++ b/lib/fog/connection.rb @@ -73,20 +73,20 @@ unless Fog.mocking? response.headers[capitalize(header[0])] = header[1] end - if error || params[:parser] - if error - parser = Fog::Errors::Parser.new - elsif params[:parser] - parser = params[:parser] - end - body = Nokogiri::XML::SAX::PushParser.new(parser) - elsif params[:block] - body = nil - else - body = '' - end - unless params[:method] == 'HEAD' + if error || params[:parser] + if error + parser = Fog::Errors::Parser.new + elsif params[:parser] + parser = params[:parser] + end + body = Nokogiri::XML::SAX::PushParser.new(parser) + elsif params[:block] + body = nil + else + body = '' + end + if response.headers['Content-Length'] if error || !params[:block] body << @connection.read(response.headers['Content-Length'].to_i) @@ -112,13 +112,13 @@ unless Fog.mocking? end end end - end - if parser - body.finish - response.body = parser.response - else - response.body = body + if parser + body.finish + response.body = parser.response + else + response.body = body + end end if error