Setting the OnBeforeResourceLoad redirectUrl value should behave the same as using request->SetURL() (issue #529).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@502 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt 2012-02-16 20:13:07 +00:00
parent 1a092a0c1a
commit c04103744c
1 changed files with 3 additions and 11 deletions

View File

@ -467,10 +467,10 @@ class RequestProxy : public net::URLRequest::Delegate,
if (!handled) { if (!handled) {
// Observe URL from request. // Observe URL from request.
const std::string requestUrl(request->GetURL()); const std::string requestUrl(request->GetURL());
if (requestUrl != originalUrl) { if (requestUrl != originalUrl)
params->url = GURL(requestUrl); params->url = GURL(requestUrl);
redirectUrl.clear(); // Request URL trumps redirect URL else if (!redirectUrl.empty())
} params->url = GURL(std::string(redirectUrl));
// Observe method from request. // Observe method from request.
params->method = request->GetMethod(); params->method = request->GetMethod();
@ -502,14 +502,6 @@ class RequestProxy : public net::URLRequest::Delegate,
OnCompletedRequest( OnCompletedRequest(
URLRequestStatus(URLRequestStatus::CANCELED, net::ERR_ABORTED), URLRequestStatus(URLRequestStatus::CANCELED, net::ERR_ABORTED),
std::string(), base::TimeTicks()); std::string(), base::TimeTicks());
} else if (!redirectUrl.empty()) {
// redirect to the specified URL
handled = true;
params->url = GURL(std::string(redirectUrl));
ResourceResponseInfo info;
bool defer_redirect;
OnReceivedRedirect(params->url, info, &defer_redirect);
} else if (resourceStream.get()) { } else if (resourceStream.get()) {
// load from the provided resource stream // load from the provided resource stream
handled = true; handled = true;