diff options
Diffstat (limited to 'chromium/content/browser')
4 files changed, 27 insertions, 17 deletions
diff --git a/chromium/content/browser/download/download_browsertest.cc b/chromium/content/browser/download/download_browsertest.cc index ed9e9c1de83..27b607702a1 100644 --- a/chromium/content/browser/download/download_browsertest.cc +++ b/chromium/content/browser/download/download_browsertest.cc @@ -73,6 +73,7 @@ #include "third_party/blink/public/common/features.h" #include "third_party/blink/public/platform/web_mouse_event.h" #include "url/gurl.h" +#include "url/origin.h" #if BUILDFLAG(ENABLE_PLUGINS) #include "content/browser/plugin_service_impl.h" @@ -1039,7 +1040,7 @@ class ParallelDownloadTest : public DownloadContentTest { download::DownloadItem* download = DownloadManagerForShell(shell())->CreateDownloadItem( "F7FB1F59-7DE1-4845-AFDB-8A688F70F583", 1, path, base::FilePath(), - url_chain, GURL(), GURL(), GURL(), GURL(), + url_chain, GURL(), GURL(), GURL(), GURL(), url::Origin(), "application/octet-stream", "application/octet-stream", base::Time::Now(), base::Time(), parameters.etag, parameters.last_modified, total_bytes, parameters.size, @@ -2493,7 +2494,7 @@ IN_PROC_BROWSER_TEST_F(DownloadContentTest, ResumeRestoredDownload_NoFile) { DownloadManagerForShell(shell())->CreateDownloadItem( "F7FB1F59-7DE1-4845-AFDB-8A688F70F583", 1, intermediate_file_path, base::FilePath(), url_chain, GURL(), GURL(), GURL(), GURL(), - "application/octet-stream", "application/octet-stream", + url::Origin(), "application/octet-stream", "application/octet-stream", base::Time::Now(), base::Time(), parameters.etag, std::string(), kIntermediateSize, parameters.size, std::string(), download::DownloadItem::INTERRUPTED, @@ -2559,7 +2560,7 @@ IN_PROC_BROWSER_TEST_F(DownloadContentTest, ResumeRestoredDownload_NoHash) { DownloadManagerForShell(shell())->CreateDownloadItem( "F7FB1F59-7DE1-4845-AFDB-8A688F70F583", 1, intermediate_file_path, base::FilePath(), url_chain, GURL(), GURL(), GURL(), GURL(), - "application/octet-stream", "application/octet-stream", + url::Origin(), "application/octet-stream", "application/octet-stream", base::Time::Now(), base::Time(), parameters.etag, std::string(), kIntermediateSize, parameters.size, std::string(), download::DownloadItem::INTERRUPTED, @@ -2612,7 +2613,7 @@ IN_PROC_BROWSER_TEST_F(DownloadContentTest, DownloadManagerForShell(shell())->CreateDownloadItem( "F7FB1F59-7DE1-4845-AFDB-8A688F70F583", 1, intermediate_file_path, base::FilePath(), url_chain, GURL(), GURL(), GURL(), GURL(), - "application/octet-stream", "application/octet-stream", + url::Origin(), "application/octet-stream", "application/octet-stream", base::Time::Now(), base::Time(), "fake-etag", std::string(), kIntermediateSize, parameters.size, std::string(), download::DownloadItem::INTERRUPTED, @@ -2671,7 +2672,7 @@ IN_PROC_BROWSER_TEST_F(DownloadContentTest, DownloadManagerForShell(shell())->CreateDownloadItem( "F7FB1F59-7DE1-4845-AFDB-8A688F70F583", 1, intermediate_file_path, base::FilePath(), url_chain, GURL(), GURL(), GURL(), GURL(), - "application/octet-stream", "application/octet-stream", + url::Origin(), "application/octet-stream", "application/octet-stream", base::Time::Now(), base::Time(), parameters.etag, std::string(), kIntermediateSize, parameters.size, std::string(std::begin(kPartialHash), std::end(kPartialHash)), @@ -2737,7 +2738,7 @@ IN_PROC_BROWSER_TEST_F(DownloadContentTest, ResumeRestoredDownload_WrongHash) { DownloadManagerForShell(shell())->CreateDownloadItem( "F7FB1F59-7DE1-4845-AFDB-8A688F70F583", 1, intermediate_file_path, base::FilePath(), url_chain, GURL(), GURL(), GURL(), GURL(), - "application/octet-stream", "application/octet-stream", + url::Origin(), "application/octet-stream", "application/octet-stream", base::Time::Now(), base::Time(), parameters.etag, std::string(), kIntermediateSize, parameters.size, std::string(std::begin(kPartialHash), std::end(kPartialHash)), @@ -2813,7 +2814,7 @@ IN_PROC_BROWSER_TEST_F(DownloadContentTest, ResumeRestoredDownload_ShortFile) { DownloadManagerForShell(shell())->CreateDownloadItem( "F7FB1F59-7DE1-4845-AFDB-8A688F70F583", 1, intermediate_file_path, base::FilePath(), url_chain, GURL(), GURL(), GURL(), GURL(), - "application/octet-stream", "application/octet-stream", + url::Origin(), "application/octet-stream", "application/octet-stream", base::Time::Now(), base::Time(), parameters.etag, std::string(), kIntermediateSize, parameters.size, std::string(), download::DownloadItem::INTERRUPTED, @@ -2886,7 +2887,7 @@ IN_PROC_BROWSER_TEST_F(DownloadContentTest, ResumeRestoredDownload_LongFile) { DownloadManagerForShell(shell())->CreateDownloadItem( "F7FB1F59-7DE1-4845-AFDB-8A688F70F583", 1, intermediate_file_path, base::FilePath(), url_chain, GURL(), GURL(), GURL(), GURL(), - "application/octet-stream", "application/octet-stream", + url::Origin(), "application/octet-stream", "application/octet-stream", base::Time::Now(), base::Time(), parameters.etag, std::string(), kIntermediateSize, parameters.size, std::string(), download::DownloadItem::INTERRUPTED, diff --git a/chromium/content/browser/download/download_manager_impl.cc b/chromium/content/browser/download/download_manager_impl.cc index 7cb5bc49ca1..10c22f88cf5 100644 --- a/chromium/content/browser/download/download_manager_impl.cc +++ b/chromium/content/browser/download/download_manager_impl.cc @@ -82,7 +82,6 @@ #include "services/network/public/cpp/wrapper_shared_url_loader_factory.h" #include "storage/browser/blob/blob_url_loader_factory.h" #include "storage/browser/blob/blob_url_request_job_factory.h" -#include "url/origin.h" #if defined(USE_X11) #include "base/nix/xdg_util.h" @@ -218,6 +217,7 @@ class DownloadItemFactoryImpl : public download::DownloadItemFactory { const GURL& site_url, const GURL& tab_url, const GURL& tab_refererr_url, + const base::Optional<url::Origin>& request_initiator, const std::string& mime_type, const std::string& original_mime_type, base::Time start_time, @@ -237,10 +237,10 @@ class DownloadItemFactoryImpl : public download::DownloadItemFactory { override { return new download::DownloadItemImpl( delegate, guid, download_id, current_path, target_path, url_chain, - referrer_url, site_url, tab_url, tab_refererr_url, mime_type, - original_mime_type, start_time, end_time, etag, last_modified, - received_bytes, total_bytes, 0 /* auto_resume_count */, hash, state, - danger_type, interrupt_reason, false /* paused */, + referrer_url, site_url, tab_url, tab_refererr_url, request_initiator, + mime_type, original_mime_type, start_time, end_time, etag, + last_modified, received_bytes, total_bytes, 0 /* auto_resume_count */, hash, + state, danger_type, interrupt_reason, false /* paused */, false /* allow_metered */, opened, last_access_time, transient, received_slices); } @@ -971,6 +971,7 @@ download::DownloadItem* DownloadManagerImpl::CreateDownloadItem( const GURL& site_url, const GURL& tab_url, const GURL& tab_refererr_url, + const base::Optional<url::Origin>& request_initiator, const std::string& mime_type, const std::string& original_mime_type, base::Time start_time, @@ -1006,10 +1007,10 @@ download::DownloadItem* DownloadManagerImpl::CreateDownloadItem( #endif auto item = base::WrapUnique(item_factory_->CreatePersistedItem( this, guid, id, current_path, target_path, url_chain, referrer_url, - site_url, tab_url, tab_refererr_url, mime_type, original_mime_type, - start_time, end_time, etag, last_modified, received_bytes, total_bytes, - hash, state, danger_type, interrupt_reason, opened, last_access_time, - transient, received_slices)); + site_url, tab_url, tab_refererr_url, request_initiator, mime_type, + original_mime_type, start_time, end_time, etag, last_modified, + received_bytes, total_bytes, hash, state, danger_type, interrupt_reason, + opened, last_access_time, transient, received_slices)); if (in_progress_download) { // If the download item from history db is already in terminal state, // remove it from the in-progress db. Otherwise, use the in-progress db one. diff --git a/chromium/content/browser/download/download_manager_impl.h b/chromium/content/browser/download/download_manager_impl.h index b94e85cf289..94ce542e649 100644 --- a/chromium/content/browser/download/download_manager_impl.h +++ b/chromium/content/browser/download/download_manager_impl.h @@ -18,6 +18,7 @@ #include "base/memory/ref_counted.h" #include "base/memory/weak_ptr.h" #include "base/observer_list.h" +#include "base/optional.h" #include "base/sequenced_task_runner_helpers.h" #include "base/synchronization/lock.h" #include "build/build_config.h" @@ -33,6 +34,7 @@ #include "content/public/browser/ssl_status.h" #include "services/metrics/public/cpp/ukm_source_id.h" #include "services/network/public/mojom/url_loader.mojom.h" +#include "url/origin.h" namespace download { class DownloadFileFactory; @@ -106,6 +108,7 @@ class CONTENT_EXPORT DownloadManagerImpl const GURL& site_url, const GURL& tab_url, const GURL& tab_refererr_url, + const base::Optional<url::Origin>& request_initiator, const std::string& mime_type, const std::string& original_mime_type, base::Time start_time, diff --git a/chromium/content/browser/download/download_manager_impl_unittest.cc b/chromium/content/browser/download/download_manager_impl_unittest.cc index c5cfc6c80f9..f2704e7aa6c 100644 --- a/chromium/content/browser/download/download_manager_impl_unittest.cc +++ b/chromium/content/browser/download/download_manager_impl_unittest.cc @@ -19,6 +19,7 @@ #include "base/guid.h" #include "base/macros.h" #include "base/memory/weak_ptr.h" +#include "base/optional.h" #include "base/run_loop.h" #include "base/stl_util.h" #include "base/strings/string16.h" @@ -135,6 +136,7 @@ class MockDownloadItemFactory const GURL& site_url, const GURL& tab_url, const GURL& tab_referrer_url, + const base::Optional<url::Origin>& request_initiator, const std::string& mime_type, const std::string& original_mime_type, base::Time start_time, @@ -214,6 +216,7 @@ download::DownloadItemImpl* MockDownloadItemFactory::CreatePersistedItem( const GURL& site_url, const GURL& tab_url, const GURL& tab_referrer_url, + const base::Optional<url::Origin>& request_initiator, const std::string& mime_type, const std::string& original_mime_type, base::Time start_time, @@ -695,6 +698,7 @@ TEST_F(DownloadManagerTest, GetDownloadByGuid) { kGuid, 10, base::FilePath(), base::FilePath(), url_chain, GURL("http://example.com/a"), GURL("http://example.com/a"), GURL("http://example.com/a"), GURL("http://example.com/a"), + url::Origin::Create(GURL("http://example.com/")), "application/octet-stream", "application/octet-stream", base::Time::Now(), base::Time::Now(), std::string(), std::string(), 10, 10, std::string(), download::DownloadItem::INTERRUPTED, @@ -747,6 +751,7 @@ TEST_F(DownloadManagerTest, OnInProgressDownloadsLoaded) { in_progress_manager.get(), kGuid, 10, base::FilePath(), base::FilePath(), url_chain, GURL("http://example.com/a"), GURL("http://example.com/a"), GURL("http://example.com/a"), GURL("http://example.com/a"), + url::Origin::Create(GURL("http://example.com")), "application/octet-stream", "application/octet-stream", base::Time::Now(), base::Time::Now(), std::string(), std::string(), 10, 10, 0, std::string(), download::DownloadItem::INTERRUPTED, |