Update to Chromium version 68.0.3433.0 (#559327)

Known issues:
- Windows now requires VS 2017 15.7.1 with 10.0.17134.0 SDK.
This commit is contained in:
Marshall Greenblatt
2018-05-21 15:54:08 +03:00
parent 12cc069b69
commit 08ff72fa20
55 changed files with 414 additions and 356 deletions

View File

@@ -30,10 +30,10 @@
#include "chrome/browser/chrome_browser_main_extra_parts.h"
#include "chrome/browser/plugins/plugin_finder.h"
#include "content/public/browser/gpu_data_manager.h"
#include "content/public/common/result_codes.h"
#include "extensions/browser/extension_system.h"
#include "extensions/common/constants.h"
#include "net/base/net_module.h"
#include "services/service_manager/embedder/result_codes.h"
#include "ui/base/resource/resource_bundle.h"
#if defined(USE_AURA)
@@ -80,7 +80,7 @@ int CefBrowserMainParts::PreEarlyInitialization() {
for (size_t i = 0; i < chrome_extra_parts_.size(); ++i)
chrome_extra_parts_[i]->PreEarlyInitialization();
return content::RESULT_CODE_NORMAL_EXIT;
return service_manager::RESULT_CODE_NORMAL_EXIT;
}
void CefBrowserMainParts::PostEarlyInitialization() {

View File

@@ -54,7 +54,7 @@ class CefBrowserMainParts : public content::BrowserMainParts {
void PostMainMessageLoopStart() override;
int PreCreateThreads() override;
void ServiceManagerConnectionStarted(
content::ServiceManagerConnection* connection);
content::ServiceManagerConnection* connection) override;
void PreMainMessageLoopRun() override;
void PostMainMessageLoopRun() override;
void PostDestroyThreads() override;

View File

@@ -81,11 +81,13 @@
#include "extensions/browser/extension_registry.h"
#include "extensions/browser/extensions_browser_client.h"
#include "extensions/browser/guest_view/extensions_guest_view_message_filter.h"
#include "extensions/browser/guest_view/web_view/web_view_guest.h"
#include "extensions/browser/io_thread_extension_message_filter.h"
#include "extensions/common/constants.h"
#include "extensions/common/switches.h"
#include "net/ssl/ssl_cert_request_info.h"
#include "ppapi/host/ppapi_host.h"
#include "services/service_manager/embedder/switches.h"
#include "services/service_manager/public/mojom/connector.mojom.h"
#include "services/service_manager/sandbox/switches.h"
#include "storage/browser/quota/quota_settings.h"
@@ -720,7 +722,7 @@ void CefContentBrowserClient::AppendExtraCommandLineSwitches(
}
#if defined(OS_LINUX)
if (process_type == switches::kZygoteProcess) {
if (process_type == service_manager::switches::kZygoteProcess) {
// Propagate the following switches to the zygote command line (along with
// any associated values) if present in the browser command line.
static const char* const kSwitchNames[] = {
@@ -982,7 +984,7 @@ void CefContentBrowserClient::GetAdditionalMappedFilesForChildProcess(
content::PosixFileDescriptorInfo* mappings) {
int crash_signal_fd = GetCrashSignalFD(command_line);
if (crash_signal_fd >= 0) {
mappings->Share(kCrashDumpSignal, crash_signal_fd);
mappings->Share(service_manager::kCrashDumpSignal, crash_signal_fd);
}
}
#endif // defined(OS_LINUX)
@@ -1029,34 +1031,29 @@ CefContentBrowserClient::CreateClientCertStore(
}
void CefContentBrowserClient::RegisterNonNetworkNavigationURLLoaderFactories(
int frame_tree_node_id,
NonNetworkURLLoaderFactoryMap* factories) {
if (!extensions::ExtensionsEnabled())
return;
content::WebContents* web_contents =
content::WebContents::FromFrameTreeNodeId(frame_tree_node_id);
factories->emplace(
extensions::kExtensionScheme,
extensions::CreateExtensionNavigationURLLoaderFactory(
web_contents->GetBrowserContext(),
!!extensions::WebViewGuest::FromWebContents(web_contents)));
}
void CefContentBrowserClient::RegisterNonNetworkSubresourceURLLoaderFactories(
int render_process_id,
int render_frame_id,
NonNetworkURLLoaderFactoryMap* factories) {
if (!extensions::ExtensionsEnabled())
return;
content::RenderProcessHost* process_host =
content::RenderProcessHost::FromID(render_process_id);
content::BrowserContext* browser_context = process_host->GetBrowserContext();
factories->emplace(
extensions::kExtensionScheme,
extensions::CreateExtensionNavigationURLLoaderFactory(
render_process_id, render_frame_id,
extensions::ExtensionSystem::Get(browser_context)->info_map()));
}
void CefContentBrowserClient::RegisterNonNetworkSubresourceURLLoaderFactories(
content::RenderFrameHost* frame_host,
const GURL& frame_url,
NonNetworkURLLoaderFactoryMap* factories) {
if (!extensions::ExtensionsEnabled())
return;
content::RenderProcessHost* process_host = frame_host->GetProcess();
content::BrowserContext* browser_context = process_host->GetBrowserContext();
auto factory = extensions::MaybeCreateExtensionSubresourceURLLoaderFactory(
process_host->GetID(), frame_host->GetRoutingID(), frame_url,
extensions::ExtensionSystem::Get(browser_context)->info_map());
auto factory = extensions::CreateExtensionURLLoaderFactory(render_process_id,
render_frame_id);
if (factory)
factories->emplace(extensions::kExtensionScheme, std::move(factory));
}

View File

@@ -128,12 +128,11 @@ class CefContentBrowserClient : public content::ContentBrowserClient {
content::ResourceContext* resource_context) override;
void RegisterNonNetworkNavigationURLLoaderFactories(
int render_process_id,
int render_frame_id,
int frame_tree_node_id,
NonNetworkURLLoaderFactoryMap* factories) override;
void RegisterNonNetworkSubresourceURLLoaderFactories(
content::RenderFrameHost* frame_host,
const GURL& frame_url,
int render_process_id,
int render_frame_id,
NonNetworkURLLoaderFactoryMap* factories) override;
bool WillCreateURLLoaderFactory(
content::RenderFrameHost* frame,

View File

@@ -289,7 +289,7 @@ bool TabsSetZoomFunction::RunAsync() {
return false;
GURL url(web_contents->GetVisibleURL());
if (extensions::PermissionsData::IsRestrictedUrl(url, extension(), &error_))
if (extension()->permissions_data()->IsRestrictedUrl(url, &error_))
return false;
zoom::ZoomController* zoom_controller =
@@ -341,7 +341,7 @@ bool TabsSetZoomSettingsFunction::RunAsync() {
return false;
GURL url(web_contents->GetVisibleURL());
if (PermissionsData::IsRestrictedUrl(url, extension(), &error_))
if (extension()->permissions_data()->IsRestrictedUrl(url, &error_))
return false;
// "per-origin" scope is only available in "automatic" mode.

View File

@@ -28,6 +28,8 @@
#include "chrome/browser/browser_process.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/common/pref_names.h"
#include "components/certificate_transparency/chrome_ct_policy_enforcer.h"
#include "components/certificate_transparency/ct_known_logs.h"
#include "components/net_log/chrome_net_log.h"
#include "components/network_session_configurator/browser/network_session_configurator.h"
#include "components/prefs/pref_registry_simple.h"
@@ -37,9 +39,7 @@
#include "content/public/common/content_switches.h"
#include "content/public/common/url_constants.h"
#include "net/cert/cert_verifier.h"
#include "net/cert/ct_known_logs.h"
#include "net/cert/ct_log_verifier.h"
#include "net/cert/ct_policy_enforcer.h"
#include "net/cert/multi_log_ct_verifier.h"
#include "net/cookies/cookie_monster.h"
#include "net/dns/host_resolver.h"
@@ -155,6 +155,27 @@ std::unique_ptr<net::ProxyResolutionService> CreateProxyResolutionService(
return proxy_service;
}
// Based on net::ct::CreateLogVerifiersForKnownLogs which was deleted in
// https://crrev.com/24711fe395.
std::vector<scoped_refptr<const net::CTLogVerifier>>
CreateLogVerifiersForKnownLogs() {
std::vector<scoped_refptr<const net::CTLogVerifier>> verifiers;
for (const auto& log : certificate_transparency::GetKnownLogs()) {
scoped_refptr<const net::CTLogVerifier> log_verifier =
net::CTLogVerifier::Create(
base::StringPiece(log.log_key, log.log_key_length), log.log_name,
log.log_dns_domain);
// Make sure no null logs enter verifiers. Parsing of all statically
// configured logs should always succeed, unless there has been binary or
// memory corruption.
CHECK(log_verifier);
verifiers.push_back(std::move(log_verifier));
}
return verifiers;
}
} // namespace
CefURLRequestContextGetterImpl::CefURLRequestContextGetterImpl(
@@ -304,14 +325,15 @@ net::URLRequestContext* CefURLRequestContextGetterImpl::GetURLRequestContext() {
std::move(transport_security_state));
std::vector<scoped_refptr<const net::CTLogVerifier>> ct_logs(
net::ct::CreateLogVerifiersForKnownLogs());
CreateLogVerifiersForKnownLogs());
std::unique_ptr<net::MultiLogCTVerifier> ct_verifier(
new net::MultiLogCTVerifier());
ct_verifier->AddLogs(ct_logs);
io_state_->storage_->set_cert_transparency_verifier(std::move(ct_verifier));
std::unique_ptr<net::CTPolicyEnforcer> ct_policy_enforcer(
new net::CTPolicyEnforcer);
std::unique_ptr<certificate_transparency::ChromeCTPolicyEnforcer>
ct_policy_enforcer(
new certificate_transparency::ChromeCTPolicyEnforcer);
ct_policy_enforcer->set_enforce_net_security_expiration(
settings_.enable_net_security_expiration ? true : false);
io_state_->storage_->set_ct_policy_enforcer(std::move(ct_policy_enforcer));

View File

@@ -429,10 +429,14 @@ void CefRenderWidgetHostViewOSR::SetBackgroundColor(SkColor color) {
}
}
SkColor CefRenderWidgetHostViewOSR::background_color() const {
base::Optional<SkColor> CefRenderWidgetHostViewOSR::GetBackgroundColor() const {
return background_color_;
}
void CefRenderWidgetHostViewOSR::UpdateBackgroundColor() {
NOTREACHED();
}
bool CefRenderWidgetHostViewOSR::LockMouse() {
return false;
}
@@ -447,7 +451,7 @@ void CefRenderWidgetHostViewOSR::TakeFallbackContentFrom(
->IsRenderWidgetHostViewGuest());
CefRenderWidgetHostViewOSR* view_cef =
static_cast<CefRenderWidgetHostViewOSR*>(view);
SetBackgroundColor(view_cef->background_color());
SetBackgroundColor(view_cef->background_color_);
if (GetDelegatedFrameHost() && view_cef->GetDelegatedFrameHost()) {
GetDelegatedFrameHost()->TakeFallbackContentFrom(
view_cef->GetDelegatedFrameHost());
@@ -928,7 +932,7 @@ CefRenderWidgetHostViewOSR::CreateSoftwareOutputDevice(
DCHECK(!copy_frame_generator_);
DCHECK(!software_output_device_);
software_output_device_ = new CefSoftwareOutputDeviceOSR(
compositor, background_color() == SK_ColorTRANSPARENT,
compositor, background_color_ == SK_ColorTRANSPARENT,
base::Bind(&CefRenderWidgetHostViewOSR::OnPaint,
weak_ptr_factory_.GetWeakPtr()));
return base::WrapUnique(software_output_device_);
@@ -976,25 +980,15 @@ void CefRenderWidgetHostViewOSR::DidReceiveFirstFrameAfterNavigation() {
render_widget_host_->DidReceiveFirstFrameAfterNavigation();
}
std::unique_ptr<ui::CompositorLock>
CefRenderWidgetHostViewOSR::GetCompositorLock(
ui::CompositorLockClient* client) {
return GetCompositor()->GetCompositorLock(client);
}
void CefRenderWidgetHostViewOSR::CompositorResizeLockEnded() {
ReleaseResize();
}
#endif // !defined(OS_MACOSX)
bool CefRenderWidgetHostViewOSR::InstallTransparency() {
if (background_color() == SK_ColorTRANSPARENT) {
SetBackgroundColor(background_color());
if (background_color_ == SK_ColorTRANSPARENT) {
SetBackgroundColor(background_color_);
#if defined(OS_MACOSX)
browser_compositor_->SetBackgroundColor(background_color());
browser_compositor_->SetBackgroundColor(background_color_);
#else
compositor_->SetBackgroundColor(background_color());
compositor_->SetBackgroundColor(background_color_);
#endif
return true;
}
@@ -1548,7 +1542,7 @@ viz::FrameSinkId CefRenderWidgetHostViewOSR::AllocateFrameSinkId(
void CefRenderWidgetHostViewOSR::UpdateBackgroundColorFromRenderer(
SkColor color) {
if (color == background_color())
if (color == background_color_)
return;
background_color_ = color;

View File

@@ -17,7 +17,6 @@
#include "build/build_config.h"
#include "components/viz/common/frame_sinks/begin_frame_source.h"
#include "components/viz/common/surfaces/parent_local_surface_id_allocator.h"
#include "content/browser/renderer_host/compositor_resize_lock.h"
#include "content/browser/renderer_host/delegated_frame_host.h"
#include "content/browser/renderer_host/render_widget_host_view_base.h"
#include "ui/compositor/compositor.h"
@@ -87,8 +86,7 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase,
public ui::CompositorDelegate
#if !defined(OS_MACOSX)
,
public content::DelegatedFrameHostClient,
public content::CompositorResizeLockClient
public content::DelegatedFrameHostClient
#endif
{
public:
@@ -114,7 +112,8 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase,
void EnsureSurfaceSynchronizedForLayoutTest() override;
gfx::Rect GetViewBounds() const override;
void SetBackgroundColor(SkColor color) override;
SkColor background_color() const override;
base::Optional<SkColor> GetBackgroundColor() const override;
void UpdateBackgroundColor() override;
bool LockMouse() override;
void UnlockMouse() override;
void TakeFallbackContentFrom(content::RenderWidgetHostView* view) override;
@@ -202,11 +201,6 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase,
void OnBeginFrame(base::TimeTicks frame_time) override;
void OnFrameTokenChanged(uint32_t frame_token) override;
void DidReceiveFirstFrameAfterNavigation() override;
// CompositorResizeLockClient implementation.
std::unique_ptr<ui::CompositorLock> GetCompositorLock(
ui::CompositorLockClient* client) override;
void CompositorResizeLockEnded() override;
#endif // !defined(OS_MACOSX)
bool InstallTransparency();
@@ -238,7 +232,7 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase,
const CefRange& replacement_range,
int relative_cursor_pos);
void ImeFinishComposingText(bool keep_selection);
void ImeCancelComposition();
void ImeCancelComposition() override;
CefRefPtr<CefBrowserHostImpl> browser_impl() const { return browser_impl_; }
void set_browser_impl(CefRefPtr<CefBrowserHostImpl> browser) {

View File

@@ -44,7 +44,7 @@ class MacHelper : public content::BrowserCompositorMacClient,
view_->render_widget_host()->delegate()->IsFullscreenForCurrentTab()) {
return SK_ColorBLACK;
}
return view_->background_color();
return *view_->GetBackgroundColor();
}
void BrowserCompositorMacOnBeginFrame(base::TimeTicks frame_time) override {}

View File

@@ -207,6 +207,10 @@ CefStoragePartitionProxy::GetPrefetchURLLoaderService() {
return parent_->GetPrefetchURLLoaderService();
}
content::CookieStoreContext* CefStoragePartitionProxy::GetCookieStoreContext() {
return parent_->GetCookieStoreContext();
}
content::URLLoaderFactoryGetter*
CefStoragePartitionProxy::url_loader_factory_getter() {
return parent_->url_loader_factory_getter();

View File

@@ -80,6 +80,7 @@ class CefStoragePartitionProxy : public content::StoragePartition {
content::BlobURLLoaderFactory* GetBlobURLLoaderFactory() override;
content::BlobRegistryWrapper* GetBlobRegistry() override;
content::PrefetchURLLoaderService* GetPrefetchURLLoaderService() override;
content::CookieStoreContext* GetCookieStoreContext() override;
content::URLLoaderFactoryGetter* url_loader_factory_getter() override;
content::BrowserContext* browser_context() const override;
mojo::BindingId Bind(

View File

@@ -45,7 +45,7 @@ CEF_LABEL_BUTTON_VIEW_T class CefLabelButtonView : public CEF_BUTTON_VIEW_D {
}
// CefViewView methods:
bool HasMinimumSize() const { return true; }
bool HasMinimumSize() const override { return true; }
};
#endif // CEF_LIBCEF_BROWSER_VIEWS_LABEL_BUTTON_VIEW_H_

View File

@@ -18,6 +18,7 @@
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
#include "components/crash/core/common/crash_key.h"
#include "services/service_manager/embedder/switches.h"
#include "third_party/crashpad/crashpad/client/annotation.h"
#if defined(OS_MACOSX)
@@ -603,16 +604,17 @@ bool CefCrashReporterClient::GetCrashMetricsLocation(
void CefCrashReporterClient::GetProductNameAndVersion(const char** product_name,
const char** version) {
GetProductNameAndVersion(product_name, version, nullptr);
}
void CefCrashReporterClient::GetProductNameAndVersion(const char** product_name,
const char** version,
const char** channel) {
*product_name = product_name_.c_str();
*version = product_version_.c_str();
}
void CefCrashReporterClient::GetProductNameAndVersion(std::string* product_name,
std::string* version,
std::string* channel) {
*product_name = product_name_;
*version = product_version_;
}
#if !defined(OS_MACOSX)
base::FilePath CefCrashReporterClient::GetReporterLogFilename() {
@@ -623,7 +625,7 @@ bool CefCrashReporterClient::EnableBreakpadForProcess(
const std::string& process_type) {
return process_type == switches::kRendererProcess ||
process_type == switches::kPpapiPluginProcess ||
process_type == switches::kZygoteProcess ||
process_type == service_manager::switches::kZygoteProcess ||
process_type == switches::kGpuProcess;
}

View File

@@ -53,9 +53,9 @@ class CefCrashReporterClient : public crash_reporter::CrashReporterClient {
#elif defined(OS_POSIX)
void GetProductNameAndVersion(const char** product_name,
const char** version) override;
void GetProductNameAndVersion(const char** product_name,
const char** version,
const char** channel) override;
void GetProductNameAndVersion(std::string* product_name,
std::string* version,
std::string* channel) override;
#if !defined(OS_MACOSX)
base::FilePath GetReporterLogFilename() override;
bool EnableBreakpadForProcess(const std::string& process_type) override;

View File

@@ -16,6 +16,7 @@
#include "components/crash/core/common/crash_key.h"
#include "components/crash/core/common/crash_keys.h"
#include "content/public/common/content_switches.h"
#include "services/service_manager/embedder/switches.h"
#if defined(OS_MACOSX)
#include "base/mac/foundation_util.h"
@@ -130,7 +131,7 @@ void InitCrashReporter(const base::CommandLine& command_line,
#else // !defined(OS_MACOSX)
breakpad::SetCrashServerURL(crash_client->GetCrashServerURL());
if (process_type != switches::kZygoteProcess) {
if (process_type != service_manager::switches::kZygoteProcess) {
// Crash reporting for subprocesses created using the zygote will be
// initialized in ZygoteForked.
breakpad::InitCrashReporter(process_type);

View File

@@ -5,9 +5,9 @@
"service_manager:connector": {
"provides": {
"renderer": [
"blink::mojom::BudgetService",
"metrics::mojom::LeakDetector",
"mojom::ModuleEventSink"
"blink.mojom.BudgetService",
"metrics.mojom.LeakDetector",
"mojom.ModuleEventSink"
]
},
"requires": {
@@ -18,9 +18,9 @@
"navigation:frame": {
"provides": {
"renderer": [
"blink::mojom::BudgetService",
"extensions::KeepAlive",
"extensions::mime_handler::MimeHandlerService"
"blink.mojom.BudgetService",
"extensions.KeepAlive",
"extensions.mime_handler.MimeHandlerService"
]
}
}

View File

@@ -4,7 +4,7 @@
"service_manager:connector": {
"provides": {
"browser": [
"spellcheck::mojom::SpellChecker"
"spellcheck.mojom.SpellChecker"
]
},
"requires": {

View File

@@ -4,7 +4,7 @@
"service_manager:connector": {
"provides": {
"browser": [
"net::interfaces::ProxyResolverFactory"
"net.interfaces.ProxyResolverFactory"
]
}
}

View File

@@ -25,6 +25,7 @@
#include "content/public/common/content_switches.h"
#include "media/cdm/cdm_host_file.h"
#include "media/cdm/supported_cdm_versions.h"
#include "services/service_manager/embedder/switches.h"
#include "services/service_manager/sandbox/switches.h"
namespace {
@@ -430,7 +431,7 @@ void CefWidevineLoader::AddContentDecryptionModules(
// errors during plugin loading. This is because the Zygote process must pre-
// load all plugins before initializing the sandbox.
if (command_line.GetSwitchValueASCII(switches::kProcessType) !=
switches::kZygoteProcess ||
service_manager::switches::kZygoteProcess ||
command_line.HasSwitch(service_manager::switches::kNoSandbox)) {
return;
}

View File

@@ -44,7 +44,7 @@ class CefWebURLLoaderClient : public blink::WebURLLoaderClient {
unsigned long long totalBytesToBeSent) override;
void DidReceiveResponse(const WebURLResponse& response) override;
void DidReceiveData(const char* data, int dataLength) override;
void DidFinishLoading(double finish_time,
void DidFinishLoading(base::TimeTicks finish_time,
int64_t total_encoded_data_length,
int64_t total_encoded_body_length,
int64_t total_decoded_body_length,
@@ -292,7 +292,7 @@ void CefWebURLLoaderClient::DidReceiveData(const char* data, int dataLength) {
context_->OnDownloadData(data, dataLength);
}
void CefWebURLLoaderClient::DidFinishLoading(double finishTime,
void CefWebURLLoaderClient::DidFinishLoading(base::TimeTicks finish_time,
int64_t total_encoded_data_length,
int64_t total_encoded_body_length,
int64_t total_decoded_body_length,