class Rack::ContentLength

header specified.
does not fix responses that have an invalid content-length
a content-length or transfer-encoding header. Note that this
Sets the content-length header on responses that do not specify

def call(env)

def call(env)
  status, headers, body = response = @app.call(env)
  if !STATUS_WITH_NO_ENTITY_BODY.key?(status.to_i) &&
     !headers[CONTENT_LENGTH] &&
     !headers[TRANSFER_ENCODING] &&
     body.respond_to?(:to_ary)
    response[2] = body = body.to_ary
    headers[CONTENT_LENGTH] = body.sum(&:bytesize).to_s
  end
  response
end

def initialize(app)

def initialize(app)
  @app = app
end