lib/zendesk_api/middleware/response/gzip.rb in zendesk_api-1.37.0 vs lib/zendesk_api/middleware/response/gzip.rb in zendesk_api-1.38.0.rc1

- old
+ new

@@ -5,14 +5,15 @@ # @private module Middleware # @private module Response # Faraday middleware to handle content-encoding = gzip - class Gzip < Faraday::Response::Middleware + class Gzip < Faraday::Middleware def on_complete(env) - if !env[:body].strip.empty? && env[:response_headers]['content-encoding'] == "gzip" - env[:body] = Zlib::GzipReader.new(StringIO.new(env[:body])).read - end + return if env[:response_headers]['content-encoding'] != "gzip" + return if env[:body].force_encoding(Encoding::BINARY).strip.empty? + + env[:body] = Zlib::GzipReader.new(StringIO.new(env[:body])).read end end end end end