def response_redirect response, method, page, redirects, referer = current_page
case @redirect_ok
when true, :all
when false, nil
return page
when :permanent
return page unless Net::HTTPMovedPermanently === response
end
log.info("follow redirect to: #{response['Location']}") if log
raise Mechanize::RedirectLimitReachedError.new(page, redirects) if
redirects + 1 > @redirection_limit
redirect_method = method == :head ? :head : :get
@history.push(page, page.uri)
new_uri = resolve response['Location'].to_s, page
fetch new_uri, redirect_method, {}, [], referer, redirects + 1
end