| Index: net/url_request/url_request_job_factory_impl.cc
|
| diff --git a/net/url_request/url_request_job_factory_impl.cc b/net/url_request/url_request_job_factory_impl.cc
|
| index f4c1d01fbd730ad106e2bdc6da13d37a2f580c19..84fb9510836824363171e9f28d04d99e2efc2fe1 100644
|
| --- a/net/url_request/url_request_job_factory_impl.cc
|
| +++ b/net/url_request/url_request_job_factory_impl.cc
|
| @@ -64,4 +64,20 @@ bool URLRequestJobFactoryImpl::IsHandledURL(const GURL& url) const {
|
| return IsHandledProtocol(url.scheme());
|
| }
|
|
|
| +bool URLRequestJobFactoryImpl::IsSafeRedirectTarget(
|
| + const GURL& location) const {
|
| + DCHECK(CalledOnValidThread());
|
| + if (!location.is_valid()) {
|
| + // Error cases are safely handled.
|
| + return true;
|
| + }
|
| + ProtocolHandlerMap::const_iterator it = protocol_handler_map_.find(
|
| + location.scheme());
|
| + if (it == protocol_handler_map_.end()) {
|
| + // Unhandled cases are safely handled.
|
| + return true;
|
| + }
|
| + return it->second->IsSafeRedirectTarget(location);
|
| +}
|
| +
|
| } // namespace net
|
|
|