Fix a crashing call to GURL::spec() in downloads_api.cc:DownloadItemToJSON()
The actual bug is DownloadItemImpl::GetOriginalUrl(): the front() of an empty vector is not a good GURL reference!
The sprinkling of GURL::is_valid() is just to make me feel better.
There is still the open question of what happened to the downloads_url_chain records, but that is less urgent than stopping the crashes.
BUG=190096
Review URL: https://codereview.chromium.org/12607011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188602 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/content/browser/download/download_manager_impl.cc b/content/browser/download/download_manager_impl.cc
index b24bd0a..c9fe58c 100644
--- a/content/browser/download/download_manager_impl.cc
+++ b/content/browser/download/download_manager_impl.cc
@@ -57,7 +57,8 @@
scoped_ptr<net::URLRequest> request(
params->resource_context()->GetRequestContext()->CreateRequest(
params->url(), NULL));
- request->set_referrer(params->referrer().url.spec());
+ if (params->referrer().url.is_valid())
+ request->set_referrer(params->referrer().url.spec());
webkit_glue::ConfigureURLRequestForReferrerPolicy(
request.get(), params->referrer().policy);
request->set_load_flags(request->load_flags() | params->load_flags());