Merge pull request #17088 from electron/chromium-upgrade/74

feat: upgrade to Chromium 74.0.3724.8
This commit is contained in:
Samuel Attard 2019-03-08 17:08:59 -08:00 committed by GitHub
commit 699ef08e84
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
121 changed files with 637 additions and 1164 deletions

View file

@ -513,10 +513,9 @@ steps-lint: &steps-lint
name: Download GN Binary name: Download GN Binary
command: | command: |
chromium_revision="$(grep -A1 chromium_version src/electron/DEPS | tr -d '\n' | cut -d\' -f4)" chromium_revision="$(grep -A1 chromium_version src/electron/DEPS | tr -d '\n' | cut -d\' -f4)"
buildtools_revision="$(curl -sL "https://chromium.googlesource.com/chromium/src/+/${chromium_revision}/DEPS?format=TEXT" | base64 -d | grep buildtools_revision -A1 | tr -d '\n' | cut -d\' -f4)"
git clone https://chromium.googlesource.com/chromium/buildtools "buildtools" mkdir -p "buildtools/linux64"
(cd "buildtools" && git checkout "$buildtools_revision") curl -sL "https://chromium.googlesource.com/chromium/src/+/${chromium_revision}/buildtools/linux64/gn.sha1?format=TEXT" | base64 -d > "buildtools/linux64/gn.sha1"
echo 'export CHROMIUM_BUILDTOOLS_PATH="'"$PWD"'/buildtools"' >> $BASH_ENV echo 'export CHROMIUM_BUILDTOOLS_PATH="'"$PWD"'/buildtools"' >> $BASH_ENV
download_from_google_storage --bucket chromium-gn -s "buildtools/linux64/gn.sha1" download_from_google_storage --bucket chromium-gn -s "buildtools/linux64/gn.sha1"

2
DEPS
View file

@ -10,7 +10,7 @@ gclient_gn_args = [
vars = { vars = {
'chromium_version': 'chromium_version':
'73.0.3683.68', '74.0.3724.8',
'node_version': 'node_version':
'5e32b02e3c180c9997d60fe85042d335b6d9a588', '5e32b02e3c180c9997d60fe85042d335b6d9a588',

View file

@ -79,6 +79,8 @@ build_script:
appveyor PushArtifact out/Default/symbols.zip appveyor PushArtifact out/Default/symbols.zip
} }
test_script: test_script:
# Workaround for https://github.com/appveyor/ci/issues/2420
- set "PATH=%PATH%;C:\Program Files\Git\mingw64\libexec\git-core"
- ps: >- - ps: >-
if ((-Not (Test-Path Env:\ELECTRON_RELEASE)) -And ($env:GN_CONFIG -in "testing", "release")) { if ((-Not (Test-Path Env:\ELECTRON_RELEASE)) -And ($env:GN_CONFIG -in "testing", "release")) {
$env:RUN_TESTS="true" $env:RUN_TESTS="true"

View file

@ -6,15 +6,15 @@
#include "base/no_destructor.h" #include "base/no_destructor.h"
#include "printing/buildflags/buildflags.h" #include "printing/buildflags/buildflags.h"
#include "services/proxy_resolver/proxy_resolver_manifest.h" #include "services/proxy_resolver/public/cpp/manifest.h"
#include "services/service_manager/public/cpp/manifest_builder.h" #include "services/service_manager/public/cpp/manifest_builder.h"
#if BUILDFLAG(ENABLE_PRINTING) #if BUILDFLAG(ENABLE_PRINTING)
#include "components/services/pdf_compositor/pdf_compositor_manifest.h" #include "components/services/pdf_compositor/public/cpp/manifest.h"
#endif #endif
#if BUILDFLAG(ENABLE_PRINT_PREVIEW) #if BUILDFLAG(ENABLE_PRINT_PREVIEW)
#include "chrome/services/printing/manifest.h" #include "chrome/services/printing/public/cpp/manifest.h"
#endif #endif
const service_manager::Manifest& GetElectronContentBrowserOverlayManifest() { const service_manager::Manifest& GetElectronContentBrowserOverlayManifest() {
@ -34,10 +34,10 @@ GetElectronPackagedServicesOverlayManifest() {
static base::NoDestructor<std::vector<service_manager::Manifest>> manifests{{ static base::NoDestructor<std::vector<service_manager::Manifest>> manifests{{
proxy_resolver::GetManifest(), proxy_resolver::GetManifest(),
#if BUILDFLAG(ENABLE_PRINTING) #if BUILDFLAG(ENABLE_PRINTING)
pdf_compositor::GetManifest(), printing::GetPdfCompositorManifest(),
#endif #endif
#if BUILDFLAG(ENABLE_PRINT_PREVIEW) #if BUILDFLAG(ENABLE_PRINT_PREVIEW)
chrome_printing::GetManifest(), GetChromePrintingManifest(),
#endif #endif
}}; }};
return *manifests; return *manifests;

View file

@ -18,6 +18,7 @@
#include "atom/common/native_mate_converters/callback.h" #include "atom/common/native_mate_converters/callback.h"
#include "atom/common/promise_util.h" #include "atom/common/promise_util.h"
#include "base/process/process_iterator.h" #include "base/process/process_iterator.h"
#include "base/process/process_metrics.h"
#include "base/task/cancelable_task_tracker.h" #include "base/task/cancelable_task_tracker.h"
#include "chrome/browser/icon_manager.h" #include "chrome/browser/icon_manager.h"
#include "chrome/browser/process_singleton.h" #include "chrome/browser/process_singleton.h"

View file

@ -139,7 +139,8 @@ inline net::CookieStore* GetCookieStore(
// Remove cookies from |list| not matching |filter|, and pass it to |callback|. // Remove cookies from |list| not matching |filter|, and pass it to |callback|.
void FilterCookies(std::unique_ptr<base::DictionaryValue> filter, void FilterCookies(std::unique_ptr<base::DictionaryValue> filter,
util::Promise promise, util::Promise promise,
const net::CookieList& list) { const net::CookieList& list,
const net::CookieStatusList& excluded_list) {
net::CookieList result; net::CookieList result;
for (const auto& cookie : list) { for (const auto& cookie : list) {
if (MatchesCookie(filter.get(), cookie)) if (MatchesCookie(filter.get(), cookie))
@ -175,14 +176,50 @@ void RemoveCookieOnIO(scoped_refptr<net::URLRequestContextGetter> getter,
const GURL& url, const GURL& url,
const std::string& name, const std::string& name,
util::Promise promise) { util::Promise promise) {
GetCookieStore(getter)->DeleteCookieAsync( net::CookieDeletionInfo cookie_info;
url, name, cookie_info.url = url;
base::BindOnce(util::Promise::ResolveEmptyPromise, std::move(promise))); cookie_info.name = name;
GetCookieStore(getter)->DeleteAllMatchingInfoAsync(
std::move(cookie_info),
base::BindOnce(
[](util::Promise promise, uint32_t num_deleted) {
util::Promise::ResolveEmptyPromise(std::move(promise));
},
std::move(promise)));
} }
// Callback of SetCookie. // Callback of SetCookie.
void OnSetCookie(util::Promise promise, bool success) { void OnSetCookie(util::Promise promise,
if (success) { net::CanonicalCookie::CookieInclusionStatus status) {
std::string errmsg;
switch (status) {
case net::CanonicalCookie::CookieInclusionStatus::EXCLUDE_HTTP_ONLY:
errmsg = "Failed to create httponly cookie";
break;
case net::CanonicalCookie::CookieInclusionStatus::EXCLUDE_SECURE_ONLY:
errmsg = "Cannot create a secure cookie from an insecure URL";
break;
case net::CanonicalCookie::CookieInclusionStatus::EXCLUDE_FAILURE_TO_STORE:
errmsg = "Failed to parse cookie";
break;
case net::CanonicalCookie::CookieInclusionStatus::EXCLUDE_INVALID_DOMAIN:
errmsg = "Failed to get cookie domain";
break;
case net::CanonicalCookie::CookieInclusionStatus::EXCLUDE_INVALID_PREFIX:
errmsg = "Failed because the cookie violated prefix rules.";
break;
case net::CanonicalCookie::CookieInclusionStatus::
EXCLUDE_NONCOOKIEABLE_SCHEME:
errmsg = "Cannot set cookie for current scheme";
break;
case net::CanonicalCookie::CookieInclusionStatus::INCLUDE:
errmsg = "";
break;
default:
errmsg = "Setting cookie failed";
break;
}
if (errmsg.empty()) {
base::PostTaskWithTraits( base::PostTaskWithTraits(
FROM_HERE, {BrowserThread::UI}, FROM_HERE, {BrowserThread::UI},
base::BindOnce(util::Promise::ResolveEmptyPromise, std::move(promise))); base::BindOnce(util::Promise::ResolveEmptyPromise, std::move(promise)));
@ -190,7 +227,7 @@ void OnSetCookie(util::Promise promise, bool success) {
base::PostTaskWithTraits( base::PostTaskWithTraits(
FROM_HERE, {BrowserThread::UI}, FROM_HERE, {BrowserThread::UI},
base::BindOnce(util::Promise::RejectPromise, std::move(promise), base::BindOnce(util::Promise::RejectPromise, std::move(promise),
"Setting cookie failed")); std::move(errmsg)));
} }
} }
@ -206,13 +243,13 @@ void FlushCookieStoreOnIOThread(
void SetCookieOnIO(scoped_refptr<net::URLRequestContextGetter> getter, void SetCookieOnIO(scoped_refptr<net::URLRequestContextGetter> getter,
std::unique_ptr<base::DictionaryValue> details, std::unique_ptr<base::DictionaryValue> details,
util::Promise promise) { util::Promise promise) {
std::string url, name, value, domain, path; std::string url_string, name, value, domain, path;
bool secure = false; bool secure = false;
bool http_only = false; bool http_only = false;
double creation_date; double creation_date;
double expiration_date; double expiration_date;
double last_access_date; double last_access_date;
details->GetString("url", &url); details->GetString("url", &url_string);
details->GetString("name", &name); details->GetString("name", &name);
details->GetString("value", &value); details->GetString("value", &value);
details->GetString("domain", &domain); details->GetString("domain", &domain);
@ -241,26 +278,33 @@ void SetCookieOnIO(scoped_refptr<net::URLRequestContextGetter> getter,
: base::Time::FromDoubleT(last_access_date); : base::Time::FromDoubleT(last_access_date);
} }
GURL url(url_string);
std::unique_ptr<net::CanonicalCookie> canonical_cookie( std::unique_ptr<net::CanonicalCookie> canonical_cookie(
net::CanonicalCookie::CreateSanitizedCookie( net::CanonicalCookie::CreateSanitizedCookie(
GURL(url), name, value, domain, path, creation_time, expiration_time, url, name, value, domain, path, creation_time, expiration_time,
last_access_time, secure, http_only, last_access_time, secure, http_only,
net::CookieSameSite::DEFAULT_MODE, net::COOKIE_PRIORITY_DEFAULT)); net::CookieSameSite::DEFAULT_MODE, net::COOKIE_PRIORITY_DEFAULT));
auto completion_callback = base::BindOnce(OnSetCookie, std::move(promise)); auto completion_callback = base::BindOnce(OnSetCookie, std::move(promise));
if (!canonical_cookie || !canonical_cookie->IsCanonical()) { if (!canonical_cookie || !canonical_cookie->IsCanonical()) {
std::move(completion_callback).Run(false); std::move(completion_callback)
.Run(net::CanonicalCookie::CookieInclusionStatus::
EXCLUDE_FAILURE_TO_STORE);
return; return;
} }
if (url.empty()) { if (url.is_empty()) {
std::move(completion_callback).Run(false); std::move(completion_callback)
.Run(net::CanonicalCookie::CookieInclusionStatus::
EXCLUDE_INVALID_DOMAIN);
return; return;
} }
if (name.empty()) { if (name.empty()) {
std::move(completion_callback).Run(false); std::move(completion_callback)
.Run(net::CanonicalCookie::CookieInclusionStatus::
EXCLUDE_FAILURE_TO_STORE);
return; return;
} }
GetCookieStore(getter)->SetCanonicalCookieAsync( GetCookieStore(getter)->SetCanonicalCookieAsync(
std::move(canonical_cookie), secure, http_only, std::move(canonical_cookie), url.scheme(), http_only,
std::move(completion_callback)); std::move(completion_callback));
} }

View file

@ -45,7 +45,8 @@ void Debugger::DispatchProtocolMessage(DevToolsAgentHost* agent_host,
v8::Locker locker(isolate()); v8::Locker locker(isolate());
v8::HandleScope handle_scope(isolate()); v8::HandleScope handle_scope(isolate());
std::unique_ptr<base::Value> parsed_message = base::JSONReader::Read(message); std::unique_ptr<base::Value> parsed_message =
base::JSONReader::ReadDeprecated(message);
if (!parsed_message || !parsed_message->is_dict()) if (!parsed_message || !parsed_message->is_dict())
return; return;
base::DictionaryValue* dict = base::DictionaryValue* dict =
@ -205,4 +206,4 @@ void Initialize(v8::Local<v8::Object> exports,
} // namespace } // namespace
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_debugger, Initialize); NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_debugger, Initialize)

View file

@ -232,4 +232,4 @@ void Initialize(v8::Local<v8::Object> exports,
} // namespace } // namespace
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_desktop_capturer, Initialize); NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_desktop_capturer, Initialize)

View file

@ -251,4 +251,4 @@ void Initialize(v8::Local<v8::Object> exports,
} // namespace } // namespace
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_download_item, Initialize); NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_download_item, Initialize)

View file

@ -151,4 +151,4 @@ void Initialize(v8::Local<v8::Object> exports,
} // namespace } // namespace
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_power_save_blocker, Initialize); NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_power_save_blocker, Initialize)

View file

@ -130,4 +130,4 @@ void Initialize(v8::Local<v8::Object> exports,
} // namespace } // namespace
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_system_preferences, Initialize); NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_system_preferences, Initialize)

View file

@ -97,7 +97,7 @@
#endif #endif
#if defined(OS_LINUX) || defined(OS_WIN) #if defined(OS_LINUX) || defined(OS_WIN)
#include "content/public/common/renderer_preferences.h" #include "third_party/blink/public/mojom/renderer_preferences.mojom.h"
#include "ui/gfx/font_render_params.h" #include "ui/gfx/font_render_params.h"
#endif #endif
@ -669,7 +669,8 @@ void WebContents::RendererResponsive(
observer.OnRendererResponsive(); observer.OnRendererResponsive();
} }
bool WebContents::HandleContextMenu(const content::ContextMenuParams& params) { bool WebContents::HandleContextMenu(content::RenderFrameHost* render_frame_host,
const content::ContextMenuParams& params) {
if (params.custom_context.is_pepper_menu) { if (params.custom_context.is_pepper_menu) {
Emit("pepper-context-menu", std::make_pair(params, web_contents()), Emit("pepper-context-menu", std::make_pair(params, web_contents()),
base::Bind(&content::WebContents::NotifyContextMenuClosed, base::Bind(&content::WebContents::NotifyContextMenuClosed,

View file

@ -377,7 +377,8 @@ class WebContents : public mate::TrackableObject<WebContents>,
void RendererResponsive( void RendererResponsive(
content::WebContents* source, content::WebContents* source,
content::RenderWidgetHost* render_widget_host) override; content::RenderWidgetHost* render_widget_host) override;
bool HandleContextMenu(const content::ContextMenuParams& params) override; bool HandleContextMenu(content::RenderFrameHost* render_frame_host,
const content::ContextMenuParams& params) override;
bool OnGoToEntryOffset(int offset) override; bool OnGoToEntryOffset(int offset) override;
void FindReply(content::WebContents* web_contents, void FindReply(content::WebContents* web_contents,
int request_id, int request_id,

View file

@ -103,8 +103,7 @@ class EventEmitter : public Wrappable<T> {
v8::HandleScope handle_scope(isolate()); v8::HandleScope handle_scope(isolate());
EmitEvent(isolate(), GetWrapper(), name, event, args...); EmitEvent(isolate(), GetWrapper(), name, event, args...);
return event->Get(StringToV8(isolate(), "defaultPrevented")) return event->Get(StringToV8(isolate(), "defaultPrevented"))
->BooleanValue(isolate()->GetCurrentContext()) ->BooleanValue(isolate());
.ToChecked();
} }
DISALLOW_COPY_AND_ASSIGN(EventEmitter); DISALLOW_COPY_AND_ASSIGN(EventEmitter);

View file

@ -10,6 +10,7 @@
#include "content/public/browser/render_view_host.h" #include "content/public/browser/render_view_host.h"
#include "content/public/browser/render_widget_host.h" #include "content/public/browser/render_widget_host.h"
#include "content/public/browser/render_widget_host_view.h" #include "content/public/browser/render_widget_host_view.h"
#include "media/capture/mojom/video_capture_types.mojom.h"
#include "ui/gfx/skbitmap_operations.h" #include "ui/gfx/skbitmap_operations.h"
#include "atom/common/node_includes.h" #include "atom/common/node_includes.h"
@ -87,7 +88,6 @@ void FrameSubscriber::RenderViewHostChanged(content::RenderViewHost* old_host,
void FrameSubscriber::OnFrameCaptured( void FrameSubscriber::OnFrameCaptured(
base::ReadOnlySharedMemoryRegion data, base::ReadOnlySharedMemoryRegion data,
::media::mojom::VideoFrameInfoPtr info, ::media::mojom::VideoFrameInfoPtr info,
const gfx::Rect& update_rect,
const gfx::Rect& content_rect, const gfx::Rect& content_rect,
viz::mojom::FrameSinkVideoConsumerFrameCallbacksPtr callbacks) { viz::mojom::FrameSinkVideoConsumerFrameCallbacksPtr callbacks) {
gfx::Size view_size = host_->GetView()->GetViewBounds().size(); gfx::Size view_size = host_->GetView()->GetViewBounds().size();

View file

@ -45,7 +45,6 @@ class FrameSubscriber : public content::WebContentsObserver,
void OnFrameCaptured( void OnFrameCaptured(
base::ReadOnlySharedMemoryRegion data, base::ReadOnlySharedMemoryRegion data,
::media::mojom::VideoFrameInfoPtr info, ::media::mojom::VideoFrameInfoPtr info,
const gfx::Rect& update_rect,
const gfx::Rect& content_rect, const gfx::Rect& content_rect,
viz::mojom::FrameSinkVideoConsumerFrameCallbacksPtr callbacks) override; viz::mojom::FrameSinkVideoConsumerFrameCallbacksPtr callbacks) override;
void OnStopped() override; void OnStopped() override;

View file

@ -83,6 +83,19 @@ void GPUInfoEnumerator::EndVideoEncodeAcceleratorSupportedProfile() {
value_stack.pop(); value_stack.pop();
} }
void GPUInfoEnumerator::BeginImageDecodeAcceleratorSupportedProfile() {
value_stack.push(std::move(current));
current = std::make_unique<base::DictionaryValue>();
}
void GPUInfoEnumerator::EndImageDecodeAcceleratorSupportedProfile() {
auto& top_value = value_stack.top();
top_value->SetDictionary(kImageDecodeAcceleratorSupportedProfileKey,
std::move(current));
current = std::move(top_value);
value_stack.pop();
}
void GPUInfoEnumerator::BeginAuxAttributes() { void GPUInfoEnumerator::BeginAuxAttributes() {
value_stack.push(std::move(current)); value_stack.push(std::move(current));
current = std::make_unique<base::DictionaryValue>(); current = std::make_unique<base::DictionaryValue>();

View file

@ -22,6 +22,8 @@ class GPUInfoEnumerator final : public gpu::GPUInfo::Enumerator {
"videoDecodeAcceleratorSupportedProfile"; "videoDecodeAcceleratorSupportedProfile";
const char* kVideoEncodeAcceleratorSupportedProfileKey = const char* kVideoEncodeAcceleratorSupportedProfileKey =
"videoEncodeAcceleratorSupportedProfile"; "videoEncodeAcceleratorSupportedProfile";
const char* kImageDecodeAcceleratorSupportedProfileKey =
"imageDecodeAcceleratorSupportedProfile";
const char* kAuxAttributesKey = "auxAttributes"; const char* kAuxAttributesKey = "auxAttributes";
const char* kOverlayCapabilityKey = "overlayCapability"; const char* kOverlayCapabilityKey = "overlayCapability";
const char* kDx12VulkanVersionInfoKey = "dx12VulkanVersionInfo"; const char* kDx12VulkanVersionInfoKey = "dx12VulkanVersionInfo";
@ -41,6 +43,8 @@ class GPUInfoEnumerator final : public gpu::GPUInfo::Enumerator {
void EndVideoDecodeAcceleratorSupportedProfile() override; void EndVideoDecodeAcceleratorSupportedProfile() override;
void BeginVideoEncodeAcceleratorSupportedProfile() override; void BeginVideoEncodeAcceleratorSupportedProfile() override;
void EndVideoEncodeAcceleratorSupportedProfile() override; void EndVideoEncodeAcceleratorSupportedProfile() override;
void BeginImageDecodeAcceleratorSupportedProfile() override;
void EndImageDecodeAcceleratorSupportedProfile() override;
void BeginAuxAttributes() override; void BeginAuxAttributes() override;
void EndAuxAttributes() override; void EndAuxAttributes() override;
void BeginOverlayCapability() override; void BeginOverlayCapability() override;

View file

@ -45,6 +45,7 @@
#include "electron/buildflags/buildflags.h" #include "electron/buildflags/buildflags.h"
#include "media/base/localized_strings.h" #include "media/base/localized_strings.h"
#include "services/device/public/mojom/constants.mojom.h" #include "services/device/public/mojom/constants.mojom.h"
#include "services/network/public/cpp/features.h"
#include "services/service_manager/public/cpp/connector.h" #include "services/service_manager/public/cpp/connector.h"
#include "ui/base/idle/idle.h" #include "ui/base/idle/idle.h"
#include "ui/base/material_design/material_design_controller.h" #include "ui/base/material_design/material_design_controller.h"
@ -209,7 +210,8 @@ void AtomBrowserMainParts::InitializeFeatureList() {
// Can be reenabled when our site instance policy is aligned with chromium // Can be reenabled when our site instance policy is aligned with chromium
// when node integration is enabled. // when node integration is enabled.
disable_features += disable_features +=
std::string(",") + features::kSpareRendererForSitePerProcess.name; std::string(",") + features::kSpareRendererForSitePerProcess.name +
std::string(",") + network::features::kNetworkService.name;
auto feature_list = std::make_unique<base::FeatureList>(); auto feature_list = std::make_unique<base::FeatureList>();
feature_list->InitializeFromCommandLine(enable_features, disable_features); feature_list->InitializeFromCommandLine(enable_features, disable_features);
base::FeatureList::SetInstance(std::move(feature_list)); base::FeatureList::SetInstance(std::move(feature_list));
@ -284,6 +286,7 @@ void AtomBrowserMainParts::RegisterDestructionCallback(
int AtomBrowserMainParts::PreEarlyInitialization() { int AtomBrowserMainParts::PreEarlyInitialization() {
InitializeFeatureList(); InitializeFeatureList();
field_trial_list_ = std::make_unique<base::FieldTrialList>(nullptr);
OverrideAppLogsPath(); OverrideAppLogsPath();
#if defined(USE_X11) #if defined(USE_X11)
views::LinuxUI::SetInstance(BuildGtkUi()); views::LinuxUI::SetInstance(BuildGtkUi());

View file

@ -10,6 +10,7 @@
#include <string> #include <string>
#include "base/callback.h" #include "base/callback.h"
#include "base/metrics/field_trial.h"
#include "base/timer/timer.h" #include "base/timer/timer.h"
#include "content/public/browser/browser_context.h" #include "content/public/browser/browser_context.h"
#include "content/public/browser/browser_main_parts.h" #include "content/public/browser/browser_main_parts.h"
@ -126,6 +127,7 @@ class AtomBrowserMainParts : public content::BrowserMainParts {
std::unique_ptr<NodeEnvironment> node_env_; std::unique_ptr<NodeEnvironment> node_env_;
std::unique_ptr<NodeDebugger> node_debugger_; std::unique_ptr<NodeDebugger> node_debugger_;
std::unique_ptr<IconManager> icon_manager_; std::unique_ptr<IconManager> icon_manager_;
std::unique_ptr<base::FieldTrialList> field_trial_list_;
base::RepeatingTimer gc_timer_; base::RepeatingTimer gc_timer_;

View file

@ -80,7 +80,7 @@ bool AtomResourceDispatcherHostDelegate::ShouldInterceptResourceAsStream(
GURL* origin, GURL* origin,
std::string* payload) { std::string* payload) {
#if BUILDFLAG(ENABLE_PDF_VIEWER) #if BUILDFLAG(ENABLE_PDF_VIEWER)
const content::ResourceRequestInfo* info = content::ResourceRequestInfo* info =
content::ResourceRequestInfo::ForRequest(request); content::ResourceRequestInfo::ForRequest(request);
int render_process_host_id; int render_process_host_id;

View file

@ -15,6 +15,7 @@
#include "base/mac/bundle_locations.h" #include "base/mac/bundle_locations.h"
#include "base/mac/foundation_util.h" #include "base/mac/foundation_util.h"
#include "base/mac/mac_util.h" #include "base/mac/mac_util.h"
#include "base/mac/scoped_cftyperef.h"
#include "base/strings/string_number_conversions.h" #include "base/strings/string_number_conversions.h"
#include "base/strings/sys_string_conversions.h" #include "base/strings/sys_string_conversions.h"
#include "net/base/mac/url_conversions.h" #include "net/base/mac/url_conversions.h"
@ -114,16 +115,16 @@ bool Browser::IsDefaultProtocolClient(const std::string& protocol,
NSString* protocol_ns = [NSString stringWithUTF8String:protocol.c_str()]; NSString* protocol_ns = [NSString stringWithUTF8String:protocol.c_str()];
CFStringRef bundle = base::ScopedCFTypeRef<CFStringRef> bundleId(
LSCopyDefaultHandlerForURLScheme(base::mac::NSToCFCast(protocol_ns)); LSCopyDefaultHandlerForURLScheme(base::mac::NSToCFCast(protocol_ns)));
NSString* bundleId =
static_cast<NSString*>(base::mac::CFTypeRefToNSObjectAutorelease(bundle));
if (!bundleId) if (!bundleId)
return false; return false;
// Ensure the comparison is case-insensitive // Ensure the comparison is case-insensitive
// as LS does not persist the case of the bundle id. // as LS does not persist the case of the bundle id.
NSComparisonResult result = [bundleId caseInsensitiveCompare:identifier]; NSComparisonResult result =
[base::mac::CFToNSCast(bundleId) caseInsensitiveCompare:identifier];
return result == NSOrderedSame; return result == NSOrderedSame;
} }

View file

@ -508,7 +508,7 @@ void CommonWebContentsDelegate::DevToolsIndexPath(
return; return;
std::vector<std::string> excluded_folders; std::vector<std::string> excluded_folders;
std::unique_ptr<base::Value> parsed_excluded_folders = std::unique_ptr<base::Value> parsed_excluded_folders =
base::JSONReader::Read(excluded_folders_message); base::JSONReader::ReadDeprecated(excluded_folders_message);
if (parsed_excluded_folders && parsed_excluded_folders->is_list()) { if (parsed_excluded_folders && parsed_excluded_folders->is_list()) {
const std::vector<base::Value>& folder_paths = const std::vector<base::Value>& folder_paths =
parsed_excluded_folders->GetList(); parsed_excluded_folders->GetList();

View file

@ -20,12 +20,11 @@ using content::BrowserThread;
namespace atom { namespace atom {
LoginHandler::LoginHandler( LoginHandler::LoginHandler(net::URLRequest* request,
net::URLRequest* request, const net::AuthChallengeInfo& auth_info,
const net::AuthChallengeInfo& auth_info, net::NetworkDelegate::AuthCallback callback,
net::NetworkDelegate::AuthCallback callback, net::AuthCredentials* credentials,
net::AuthCredentials* credentials, content::ResourceRequestInfo* resource_request_info)
const content::ResourceRequestInfo* resource_request_info)
: credentials_(credentials), : credentials_(credentials),
auth_info_(&auth_info), auth_info_(&auth_info),
auth_callback_(std::move(callback)), auth_callback_(std::move(callback)),

View file

@ -26,7 +26,7 @@ class LoginHandler : public base::RefCountedThreadSafe<LoginHandler> {
const net::AuthChallengeInfo& auth_info, const net::AuthChallengeInfo& auth_info,
net::NetworkDelegate::AuthCallback callback, net::NetworkDelegate::AuthCallback callback,
net::AuthCredentials* credentials, net::AuthCredentials* credentials,
const content::ResourceRequestInfo* resource_request_info); content::ResourceRequestInfo* resource_request_info);
// The auth is cancelled, must be called on UI thread. // The auth is cancelled, must be called on UI thread.
void CancelAuth(); void CancelAuth();

View file

@ -17,22 +17,6 @@
- (void)setAppearance:(NSAppearance*)appearance API_AVAILABLE(macosx(10.14)); - (void)setAppearance:(NSAppearance*)appearance API_AVAILABLE(macosx(10.14));
@end @end
#if !defined(MAC_OS_X_VERSION_10_13_2)
// forward declare Touch ID APIs
typedef NS_ENUM(NSInteger, LABiometryType) {
LABiometryTypeNone = 0,
LABiometryTypeFaceID = 1,
LABiometryTypeTouchID = 2,
} API_AVAILABLE(macosx(10.13.2));
@interface LAContext (HighSierraPointTwoSDK)
@property(nonatomic, readonly)
LABiometryType biometryType API_AVAILABLE(macosx(10.13.2));
@end
#endif
// forward declare Access APIs // forward declare Access APIs
typedef NSString* AVMediaType NS_EXTENSIBLE_STRING_ENUM; typedef NSString* AVMediaType NS_EXTENSIBLE_STRING_ENUM;

View file

@ -101,7 +101,7 @@ void ToDictionary(base::DictionaryValue* details, net::URLRequest* request) {
FillRequestDetails(details, request); FillRequestDetails(details, request);
details->SetInteger("id", request->identifier()); details->SetInteger("id", request->identifier());
details->SetDouble("timestamp", base::Time::Now().ToDoubleT() * 1000); details->SetDouble("timestamp", base::Time::Now().ToDoubleT() * 1000);
const auto* info = content::ResourceRequestInfo::ForRequest(request); auto* info = content::ResourceRequestInfo::ForRequest(request);
if (info) { if (info) {
details->SetString("resourceType", details->SetString("resourceType",
ResourceTypeToString(info->GetResourceType())); ResourceTypeToString(info->GetResourceType()));
@ -149,9 +149,8 @@ void ToDictionary(base::DictionaryValue* details, const GURL& location) {
} }
void ToDictionary(base::DictionaryValue* details, void ToDictionary(base::DictionaryValue* details,
const net::HostPortPair& host_port) { const net::IPEndPoint& remote_endpoint) {
if (host_port.host().empty()) details->SetString("ip", remote_endpoint.ToStringWithoutPort());
details->SetString("ip", host_port.host());
} }
void ToDictionary(base::DictionaryValue* details, bool from_cache) { void ToDictionary(base::DictionaryValue* details, bool from_cache) {
@ -328,9 +327,9 @@ void AtomNetworkDelegate::OnBeforeRedirect(net::URLRequest* request,
if (!base::ContainsKey(simple_listeners_, kOnBeforeRedirect)) if (!base::ContainsKey(simple_listeners_, kOnBeforeRedirect))
return; return;
HandleSimpleEvent(kOnBeforeRedirect, request, new_location, HandleSimpleEvent(
request->response_headers(), request->GetSocketAddress(), kOnBeforeRedirect, request, new_location, request->response_headers(),
request->was_cached()); request->GetResponseRemoteEndpoint(), request->was_cached());
} }
void AtomNetworkDelegate::OnResponseStarted(net::URLRequest* request, void AtomNetworkDelegate::OnResponseStarted(net::URLRequest* request,

View file

@ -177,8 +177,6 @@ URLRequestContextGetter::Handle::CreateNetworkContextParams() {
base_path.Append(chrome::kNetworkPersistentStateFilename); base_path.Append(chrome::kNetworkPersistentStateFilename);
network_context_params->cookie_path = network_context_params->cookie_path =
base_path.Append(chrome::kCookieFilename); base_path.Append(chrome::kCookieFilename);
network_context_params->channel_id_path =
base_path.Append(chrome::kChannelIDFilename);
network_context_params->restore_old_session_cookies = false; network_context_params->restore_old_session_cookies = false;
network_context_params->persist_session_cookies = false; network_context_params->persist_session_cookies = false;
// TODO(deepak1556): Matches the existing behavior https://git.io/fxHMl, // TODO(deepak1556): Matches the existing behavior https://git.io/fxHMl,

View file

@ -122,7 +122,7 @@ void PlatformNotificationService::CloseNotification(
void PlatformNotificationService::GetDisplayedNotifications( void PlatformNotificationService::GetDisplayedNotifications(
content::BrowserContext* browser_context, content::BrowserContext* browser_context,
const DisplayedNotificationsCallback& callback) {} DisplayedNotificationsCallback callback) {}
int64_t PlatformNotificationService::ReadNextPersistentNotificationId( int64_t PlatformNotificationService::ReadNextPersistentNotificationId(
content::BrowserContext* browser_context) { content::BrowserContext* browser_context) {

View file

@ -43,7 +43,7 @@ class PlatformNotificationService
const std::string& notification_id) override; const std::string& notification_id) override;
void GetDisplayedNotifications( void GetDisplayedNotifications(
content::BrowserContext* browser_context, content::BrowserContext* browser_context,
const DisplayedNotificationsCallback& callback) override; DisplayedNotificationsCallback callback) override;
int64_t ReadNextPersistentNotificationId( int64_t ReadNextPersistentNotificationId(
content::BrowserContext* browser_context) override; content::BrowserContext* browser_context) override;
void RecordNotificationUkmEvent( void RecordNotificationUkmEvent(

View file

@ -97,10 +97,10 @@ void DevToolsManagerDelegate::Inspect(content::DevToolsAgentHost* agent_host) {}
void DevToolsManagerDelegate::HandleCommand( void DevToolsManagerDelegate::HandleCommand(
content::DevToolsAgentHost* agent_host, content::DevToolsAgentHost* agent_host,
content::DevToolsAgentHostClient* client, content::DevToolsAgentHostClient* client,
std::unique_ptr<base::DictionaryValue> command, const std::string& method,
const std::string& message, const std::string& message,
NotHandledCallback callback) { NotHandledCallback callback) {
std::move(callback).Run(std::move(command), message); std::move(callback).Run(message);
} }
scoped_refptr<content::DevToolsAgentHost> scoped_refptr<content::DevToolsAgentHost>

View file

@ -25,7 +25,7 @@ class DevToolsManagerDelegate : public content::DevToolsManagerDelegate {
void Inspect(content::DevToolsAgentHost* agent_host) override; void Inspect(content::DevToolsAgentHost* agent_host) override;
void HandleCommand(content::DevToolsAgentHost* agent_host, void HandleCommand(content::DevToolsAgentHost* agent_host,
content::DevToolsAgentHostClient* client, content::DevToolsAgentHostClient* client,
std::unique_ptr<base::DictionaryValue> command, const std::string& method,
const std::string& message, const std::string& message,
NotHandledCallback callback) override; NotHandledCallback callback) override;
scoped_refptr<content::DevToolsAgentHost> CreateNewTarget( scoped_refptr<content::DevToolsAgentHost> CreateNewTarget(

View file

@ -74,20 +74,29 @@ const char kTitleFormat[] = "Developer Tools - %s";
const size_t kMaxMessageChunkSize = IPC::Channel::kMaximumMessageSize / 4; const size_t kMaxMessageChunkSize = IPC::Channel::kMaximumMessageSize / 4;
void RectToDictionary(const gfx::Rect& bounds, base::DictionaryValue* dict) { base::Value RectToDictionary(const gfx::Rect& bounds) {
dict->SetInteger("x", bounds.x()); base::Value dict(base::Value::Type::DICTIONARY);
dict->SetInteger("y", bounds.y()); dict.SetKey("x", base::Value(bounds.x()));
dict->SetInteger("width", bounds.width()); dict.SetKey("y", base::Value(bounds.y()));
dict->SetInteger("height", bounds.height()); dict.SetKey("width", base::Value(bounds.width()));
dict.SetKey("height", base::Value(bounds.height()));
return dict;
} }
void DictionaryToRect(const base::DictionaryValue& dict, gfx::Rect* bounds) { gfx::Rect DictionaryToRect(const base::Value* dict) {
int x = 0, y = 0, width = 800, height = 600; const base::Value* found = dict->FindKey("x");
dict.GetInteger("x", &x); int x = found ? found->GetInt() : 0;
dict.GetInteger("y", &y);
dict.GetInteger("width", &width); found = dict->FindKey("y");
dict.GetInteger("height", &height); int y = found ? found->GetInt() : 0;
*bounds = gfx::Rect(x, y, width, height);
found = dict->FindKey("width");
int width = found ? found->GetInt() : 800;
found = dict->FindKey("height");
int height = found ? found->GetInt() : 600;
return gfx::Rect(x, y, width, height);
} }
bool IsPointInRect(const gfx::Point& point, const gfx::Rect& rect) { bool IsPointInRect(const gfx::Point& point, const gfx::Rect& rect) {
@ -199,9 +208,8 @@ InspectableWebContentsView* CreateInspectableContentsView(
InspectableWebContentsImpl* inspectable_web_contents_impl); InspectableWebContentsImpl* inspectable_web_contents_impl);
void InspectableWebContentsImpl::RegisterPrefs(PrefRegistrySimple* registry) { void InspectableWebContentsImpl::RegisterPrefs(PrefRegistrySimple* registry) {
std::unique_ptr<base::DictionaryValue> bounds_dict(new base::DictionaryValue); registry->RegisterDictionaryPref(kDevToolsBoundsPref,
RectToDictionary(gfx::Rect(0, 0, 800, 600), bounds_dict.get()); RectToDictionary(gfx::Rect(0, 0, 800, 600)));
registry->RegisterDictionaryPref(kDevToolsBoundsPref, std::move(bounds_dict));
registry->RegisterDoublePref(kDevToolsZoomPref, 0.); registry->RegisterDoublePref(kDevToolsZoomPref, 0.);
registry->RegisterDictionaryPref(kDevToolsPreferences); registry->RegisterDictionaryPref(kDevToolsPreferences);
} }
@ -218,9 +226,9 @@ InspectableWebContentsImpl::InspectableWebContentsImpl(
is_guest_(is_guest), is_guest_(is_guest),
view_(CreateInspectableContentsView(this)), view_(CreateInspectableContentsView(this)),
weak_factory_(this) { weak_factory_(this) {
auto* bounds_dict = pref_service_->GetDictionary(kDevToolsBoundsPref); const base::Value* bounds_dict = pref_service_->Get(kDevToolsBoundsPref);
if (bounds_dict) { if (bounds_dict->is_dict()) {
DictionaryToRect(*bounds_dict, &devtools_bounds_); devtools_bounds_ = DictionaryToRect(bounds_dict);
// Sometimes the devtools window is out of screen or has too small size. // Sometimes the devtools window is out of screen or has too small size.
if (devtools_bounds_.height() < 100 || devtools_bounds_.width() < 100) { if (devtools_bounds_.height() < 100 || devtools_bounds_.width() < 100) {
devtools_bounds_.set_height(600); devtools_bounds_.set_height(600);
@ -410,9 +418,7 @@ gfx::Rect InspectableWebContentsImpl::GetDevToolsBounds() const {
} }
void InspectableWebContentsImpl::SaveDevToolsBounds(const gfx::Rect& bounds) { void InspectableWebContentsImpl::SaveDevToolsBounds(const gfx::Rect& bounds) {
base::DictionaryValue bounds_dict; pref_service_->Set(kDevToolsBoundsPref, RectToDictionary(bounds));
RectToDictionary(bounds, &bounds_dict);
pref_service_->Set(kDevToolsBoundsPref, bounds_dict);
devtools_bounds_ = bounds; devtools_bounds_ = bounds;
} }
@ -687,7 +693,8 @@ void InspectableWebContentsImpl::HandleMessageFromDevToolsFrontend(
base::ListValue* params = &empty_params; base::ListValue* params = &empty_params;
base::DictionaryValue* dict = nullptr; base::DictionaryValue* dict = nullptr;
std::unique_ptr<base::Value> parsed_message(base::JSONReader::Read(message)); std::unique_ptr<base::Value> parsed_message(
base::JSONReader::ReadDeprecated(message));
if (!parsed_message || !parsed_message->GetAsDictionary(&dict) || if (!parsed_message || !parsed_message->GetAsDictionary(&dict) ||
!dict->GetString(kFrontendHostMethod, &method) || !dict->GetString(kFrontendHostMethod, &method) ||
(dict->HasKey(kFrontendHostParams) && (dict->HasKey(kFrontendHostParams) &&

View file

@ -23,6 +23,7 @@
#include "content/public/browser/render_process_host.h" #include "content/public/browser/render_process_host.h"
#include "content/public/browser/render_view_host.h" #include "content/public/browser/render_view_host.h"
#include "content/public/browser/web_contents.h" #include "content/public/browser/web_contents.h"
#include "content/public/browser/web_contents_observer.h"
#include "net/base/mime_util.h" #include "net/base/mime_util.h"
#include "ui/shell_dialogs/selected_file_info.h" #include "ui/shell_dialogs/selected_file_info.h"

View file

@ -42,7 +42,7 @@ void WebViewGuestDelegate::AttachToIframe(
// Attach this inner WebContents |guest_web_contents| to the outer // Attach this inner WebContents |guest_web_contents| to the outer
// WebContents |embedder_web_contents|. The outer WebContents's // WebContents |embedder_web_contents|. The outer WebContents's
// frame |embedder_frame| hosts the inner WebContents. // frame |embedder_frame| hosts the inner WebContents.
guest_web_contents->AttachToOuterWebContentsFrame( embedder_web_contents_->AttachInnerWebContents(
base::WrapUnique<content::WebContents>(guest_web_contents), base::WrapUnique<content::WebContents>(guest_web_contents),
embedder_frame); embedder_frame);

View file

@ -186,16 +186,15 @@ bool Archive::Init() {
return false; return false;
} }
std::string error; base::Optional<base::Value> value = base::JSONReader::Read(header);
base::JSONReader reader;
std::unique_ptr<base::Value> value(reader.ReadToValue(header));
if (!value || !value->is_dict()) { if (!value || !value->is_dict()) {
LOG(ERROR) << "Failed to parse header: " << error; LOG(ERROR) << "Failed to parse header";
return false; return false;
} }
header_size_ = 8 + size; header_size_ = 8 + size;
header_.reset(static_cast<base::DictionaryValue*>(value.release())); header_ = base::DictionaryValue::From(
std::make_unique<base::Value>(value->Clone()));
return true; return true;
} }

View file

@ -9,6 +9,7 @@
#include "atom/common/native_mate_converters/string16_converter.h" #include "atom/common/native_mate_converters/string16_converter.h"
#include "base/logging.h" #include "base/logging.h"
#include "base/numerics/safe_conversions.h"
#include "base/threading/thread_task_runner_handle.h" #include "base/threading/thread_task_runner_handle.h"
#include "components/spellcheck/renderer/spellcheck_worditerator.h" #include "components/spellcheck/renderer/spellcheck_worditerator.h"
#include "native_mate/converter.h" #include "native_mate/converter.h"
@ -146,17 +147,22 @@ void SpellCheckClient::SpellCheckText() {
SpellCheckScope scope(*this); SpellCheckScope scope(*this);
base::string16 word; base::string16 word;
size_t word_start;
size_t word_length;
std::vector<base::string16> words; std::vector<base::string16> words;
auto& word_map = pending_request_param_->wordmap(); auto& word_map = pending_request_param_->wordmap();
blink::WebTextCheckingResult result; blink::WebTextCheckingResult result;
for (;;) { // Run until end of text for (;;) { // Run until end of text
const auto status = const auto status =
text_iterator_.GetNextWord(&word, &result.location, &result.length); text_iterator_.GetNextWord(&word, &word_start, &word_length);
if (status == SpellcheckWordIterator::IS_END_OF_TEXT) if (status == SpellcheckWordIterator::IS_END_OF_TEXT)
break; break;
if (status == SpellcheckWordIterator::IS_SKIPPABLE) if (status == SpellcheckWordIterator::IS_SKIPPABLE)
continue; continue;
result.location = base::checked_cast<int>(word_start);
result.length = base::checked_cast<int>(word_length);
// If the given word is a concatenated word of two or more valid words // If the given word is a concatenated word of two or more valid words
// (e.g. "hello:hello"), we should treat it as a valid word. // (e.g. "hello:hello"), we should treat it as a valid word.
std::vector<base::string16> contraction_words; std::vector<base::string16> contraction_words;
@ -233,8 +239,8 @@ bool SpellCheckClient::IsContraction(
contraction_iterator_.SetText(contraction.c_str(), contraction.length()); contraction_iterator_.SetText(contraction.c_str(), contraction.length());
base::string16 word; base::string16 word;
int word_start; size_t word_start;
int word_length; size_t word_length;
for (auto status = for (auto status =
contraction_iterator_.GetNextWord(&word, &word_start, &word_length); contraction_iterator_.GetNextWord(&word, &word_start, &word_length);
status != SpellcheckWordIterator::IS_END_OF_TEXT; status != SpellcheckWordIterator::IS_END_OF_TEXT;

View file

@ -102,7 +102,7 @@ class ScriptExecutionCallback : public blink::WebScriptExecutionCallback {
void Completed( void Completed(
const blink::WebVector<v8::Local<v8::Value>>& result) override { const blink::WebVector<v8::Local<v8::Value>>& result) override {
if (!callback_.is_null() && !result.IsEmpty() && !result[0].IsEmpty()) if (!callback_.is_null() && !result.empty() && !result[0].IsEmpty())
// Right now only single results per frame is supported. // Right now only single results per frame is supported.
callback_.Run(result[0]); callback_.Run(result[0]);
delete this; delete this;

View file

@ -19,10 +19,7 @@ ContentSettingsObserver::ContentSettingsObserver(
ContentSettingsObserver::~ContentSettingsObserver() {} ContentSettingsObserver::~ContentSettingsObserver() {}
bool ContentSettingsObserver::AllowDatabase( bool ContentSettingsObserver::AllowDatabase() {
const blink::WebString& name,
const blink::WebString& display_name,
unsigned estimated_size) {
blink::WebFrame* frame = render_frame()->GetWebFrame(); blink::WebFrame* frame = render_frame()->GetWebFrame();
if (frame->GetSecurityOrigin().IsUnique() || if (frame->GetSecurityOrigin().IsUnique() ||
frame->Top()->GetSecurityOrigin().IsUnique()) frame->Top()->GetSecurityOrigin().IsUnique())

View file

@ -18,9 +18,7 @@ class ContentSettingsObserver : public content::RenderFrameObserver,
~ContentSettingsObserver() override; ~ContentSettingsObserver() override;
// blink::WebContentSettingsClient implementation. // blink::WebContentSettingsClient implementation.
bool AllowDatabase(const blink::WebString& name, bool AllowDatabase() override;
const blink::WebString& display_name,
unsigned estimated_size) override;
bool AllowStorage(bool local) override; bool AllowStorage(bool local) override;
bool AllowIndexedDB(const blink::WebSecurityOrigin& security_origin) override; bool AllowIndexedDB(const blink::WebSecurityOrigin& security_origin) override;

View file

@ -13,7 +13,3 @@ ffmpeg_branding = "Chrome"
enable_basic_printing = true enable_basic_printing = true
is_cfi = false is_cfi = false
# FIXME(deepak1556): workaround for https://crbug.com/924225
# remove this when clang roll 352138 lands.
enable_precompiled_headers = false

View file

@ -10,14 +10,14 @@ source_set("manifests") {
deps = [ deps = [
"//printing/buildflags", "//printing/buildflags",
"//services/proxy_resolver:proxy_resolver_manifest", "//services/proxy_resolver/public/cpp:manifest",
] ]
if (enable_basic_printing) { if (enable_basic_printing) {
deps += [ "//components/services/pdf_compositor:pdf_compositor_manifest" ] deps += [ "//components/services/pdf_compositor/public/cpp:manifest" ]
} }
if (enable_print_preview) { if (enable_print_preview) {
deps += [ "//chrome/services/printing:manifest" ] deps += [ "//chrome/services/printing/public/cpp:manifest" ]
} }
} }

View file

@ -23,9 +23,9 @@ inline WrappableBase* InvokeFactory(
Arguments* args, Arguments* args,
const base::Callback<WrappableBase*()>& callback) { const base::Callback<WrappableBase*()>& callback) {
return callback.Run(); return callback.Run();
}; }
template<typename P1> template <typename P1>
inline WrappableBase* InvokeFactory( inline WrappableBase* InvokeFactory(
Arguments* args, Arguments* args,
const base::Callback<WrappableBase*(P1)>& callback) { const base::Callback<WrappableBase*(P1)>& callback) {
@ -33,9 +33,9 @@ inline WrappableBase* InvokeFactory(
if (!GetNextArgument(args, 0, true, &a1)) if (!GetNextArgument(args, 0, true, &a1))
return nullptr; return nullptr;
return callback.Run(a1); return callback.Run(a1);
}; }
template<typename P1, typename P2> template <typename P1, typename P2>
inline WrappableBase* InvokeFactory( inline WrappableBase* InvokeFactory(
Arguments* args, Arguments* args,
const base::Callback<WrappableBase*(P1, P2)>& callback) { const base::Callback<WrappableBase*(P1, P2)>& callback) {
@ -45,9 +45,9 @@ inline WrappableBase* InvokeFactory(
!GetNextArgument(args, 0, false, &a2)) !GetNextArgument(args, 0, false, &a2))
return nullptr; return nullptr;
return callback.Run(a1, a2); return callback.Run(a1, a2);
}; }
template<typename P1, typename P2, typename P3> template <typename P1, typename P2, typename P3>
inline WrappableBase* InvokeFactory( inline WrappableBase* InvokeFactory(
Arguments* args, Arguments* args,
const base::Callback<WrappableBase*(P1, P2, P3)>& callback) { const base::Callback<WrappableBase*(P1, P2, P3)>& callback) {
@ -59,9 +59,9 @@ inline WrappableBase* InvokeFactory(
!GetNextArgument(args, 0, false, &a3)) !GetNextArgument(args, 0, false, &a3))
return nullptr; return nullptr;
return callback.Run(a1, a2, a3); return callback.Run(a1, a2, a3);
}; }
template<typename P1, typename P2, typename P3, typename P4> template <typename P1, typename P2, typename P3, typename P4>
inline WrappableBase* InvokeFactory( inline WrappableBase* InvokeFactory(
Arguments* args, Arguments* args,
const base::Callback<WrappableBase*(P1, P2, P3, P4)>& callback) { const base::Callback<WrappableBase*(P1, P2, P3, P4)>& callback) {
@ -75,9 +75,9 @@ inline WrappableBase* InvokeFactory(
!GetNextArgument(args, 0, false, &a4)) !GetNextArgument(args, 0, false, &a4))
return nullptr; return nullptr;
return callback.Run(a1, a2, a3, a4); return callback.Run(a1, a2, a3, a4);
}; }
template<typename P1, typename P2, typename P3, typename P4, typename P5> template <typename P1, typename P2, typename P3, typename P4, typename P5>
inline WrappableBase* InvokeFactory( inline WrappableBase* InvokeFactory(
Arguments* args, Arguments* args,
const base::Callback<WrappableBase*(P1, P2, P3, P4, P5)>& callback) { const base::Callback<WrappableBase*(P1, P2, P3, P4, P5)>& callback) {
@ -93,10 +93,14 @@ inline WrappableBase* InvokeFactory(
!GetNextArgument(args, 0, false, &a5)) !GetNextArgument(args, 0, false, &a5))
return nullptr; return nullptr;
return callback.Run(a1, a2, a3, a4, a5); return callback.Run(a1, a2, a3, a4, a5);
}; }
template<typename P1, typename P2, typename P3, typename P4, typename P5, template <typename P1,
typename P6> typename P2,
typename P3,
typename P4,
typename P5,
typename P6>
inline WrappableBase* InvokeFactory( inline WrappableBase* InvokeFactory(
Arguments* args, Arguments* args,
const base::Callback<WrappableBase*(P1, P2, P3, P4, P5, P6)>& callback) { const base::Callback<WrappableBase*(P1, P2, P3, P4, P5, P6)>& callback) {
@ -114,11 +118,12 @@ inline WrappableBase* InvokeFactory(
!GetNextArgument(args, 0, false, &a6)) !GetNextArgument(args, 0, false, &a6))
return nullptr; return nullptr;
return callback.Run(a1, a2, a3, a4, a5, a6); return callback.Run(a1, a2, a3, a4, a5, a6);
}; }
template<typename Sig> template <typename Sig>
void InvokeNew(const base::Callback<Sig>& factory, void InvokeNew(const base::Callback<Sig>& factory,
v8::Isolate* isolate, Arguments* args) { v8::Isolate* isolate,
Arguments* args) {
if (!args->IsConstructCall()) { if (!args->IsConstructCall()) {
args->ThrowError("Requires constructor call"); args->ThrowError("Requires constructor call");
return; return;

View file

@ -1,6 +1,3 @@
add_ec_group_order_bits_for_openssl_compatibility.patch
add_ec_key_key2buf_for_openssl_compatibility.patch
expose_ripemd160.patch expose_ripemd160.patch
expose_aes-cfb.patch expose_aes-cfb.patch
sync_sorted_ciphers.patch
handle_pub_key_null_in_ec_key_set_public_key.patch handle_pub_key_null_in_ec_key_set_public_key.patch

View file

@ -1,39 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jeremy Apthorp <jeremya@chromium.org>
Date: Wed, 19 Dec 2018 14:42:26 -0800
Subject: Add EC_GROUP_order_bits for OpenSSL compatibility
Change-Id: I37149fa4274357d84befff85728ce2337131afa7
Reviewed-on: https://boringssl-review.googlesource.com/c/33804
Commit-Queue: Adam Langley <agl@google.com>
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/crypto/fipsmodule/ec/ec.c b/crypto/fipsmodule/ec/ec.c
index bd0662a703d6285df51735c5d4870d21a82b39cf..90b9d71f61f8d6d7ddf838c47a59729748d0d0f2 100644
--- a/crypto/fipsmodule/ec/ec.c
+++ b/crypto/fipsmodule/ec/ec.c
@@ -625,6 +625,10 @@ int EC_GROUP_get_order(const EC_GROUP *group, BIGNUM *order, BN_CTX *ctx) {
return 1;
}
+int EC_GROUP_order_bits(const EC_GROUP *group) {
+ return BN_num_bits(&group->order);
+}
+
int EC_GROUP_get_cofactor(const EC_GROUP *group, BIGNUM *cofactor,
BN_CTX *ctx) {
// All |EC_GROUP|s have cofactor 1.
diff --git a/include/openssl/ec.h b/include/openssl/ec.h
index 966393ea3b726214aa84a604c8e5a13654dcdf76..c65a1a7519fd80b681d1cf899792ee46aaa8bad6 100644
--- a/include/openssl/ec.h
+++ b/include/openssl/ec.h
@@ -133,6 +133,9 @@ OPENSSL_EXPORT const EC_POINT *EC_GROUP_get0_generator(const EC_GROUP *group);
// |group| that specifies the order of the group.
OPENSSL_EXPORT const BIGNUM *EC_GROUP_get0_order(const EC_GROUP *group);
+// EC_GROUP_order_bits returns the number of bits of the order of |group|.
+OPENSSL_EXPORT int EC_GROUP_order_bits(const EC_GROUP *group);
+
// EC_GROUP_get_cofactor sets |*cofactor| to the cofactor of |group| using
// |ctx|, if it's not NULL. It returns one on success and zero otherwise.
OPENSSL_EXPORT int EC_GROUP_get_cofactor(const EC_GROUP *group,

View file

@ -1,65 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jeremy Apthorp <jeremya@chromium.org>
Date: Wed, 19 Dec 2018 14:46:14 -0800
Subject: Add EC_KEY_key2buf for OpenSSL compatibility
Change-Id: If45ef3a9bb757bd0c7f592f40ececaf4aa2f607d
Reviewed-on: https://boringssl-review.googlesource.com/c/33824
Reviewed-by: Adam Langley <agl@google.com>
Commit-Queue: Adam Langley <agl@google.com>
diff --git a/crypto/fipsmodule/ec/ec_key.c b/crypto/fipsmodule/ec/ec_key.c
index 632dc9b2d902dfba01567f4c02ad7ad6d0c8c3e8..4bc12a073650f66f5ae8ba2beabb9a6fb2b21878 100644
--- a/crypto/fipsmodule/ec/ec_key.c
+++ b/crypto/fipsmodule/ec/ec_key.c
@@ -394,6 +394,33 @@ err:
return ok;
}
+size_t EC_KEY_key2buf(EC_KEY *key, point_conversion_form_t form,
+ unsigned char **out_buf, BN_CTX *ctx) {
+ if (key == NULL || key->pub_key == NULL || key->group == NULL) {
+ return 0;
+ }
+
+ const size_t len =
+ EC_POINT_point2oct(key->group, key->pub_key, form, NULL, 0, ctx);
+ if (len == 0) {
+ return 0;
+ }
+
+ uint8_t *buf = OPENSSL_malloc(len);
+ if (buf == NULL) {
+ return 0;
+ }
+
+ if (EC_POINT_point2oct(key->group, key->pub_key, form, buf, len, ctx) !=
+ len) {
+ OPENSSL_free(buf);
+ return 0;
+ }
+
+ *out_buf = buf;
+ return len;
+}
+
int EC_KEY_generate_key(EC_KEY *key) {
if (key == NULL || key->group == NULL) {
OPENSSL_PUT_ERROR(EC, ERR_R_PASSED_NULL_PARAMETER);
diff --git a/include/openssl/ec_key.h b/include/openssl/ec_key.h
index 9bc788758b26bb4883626a80f3e0b8c8d6eb7974..3b1a5666fa1f2071212393a3f5c8d5394c32efeb 100644
--- a/include/openssl/ec_key.h
+++ b/include/openssl/ec_key.h
@@ -177,6 +177,12 @@ OPENSSL_EXPORT int EC_KEY_set_public_key_affine_coordinates(EC_KEY *key,
BIGNUM *x,
BIGNUM *y);
+// EC_KEY_key2buf encodes the public key in |key| to an allocated octet string
+// and sets |*out_buf| to point to it. It returns the length of the encoded
+// octet string or zero if an error occurred.
+OPENSSL_EXPORT size_t EC_KEY_key2buf(EC_KEY *key, point_conversion_form_t form,
+ unsigned char **out_buf, BN_CTX *ctx);
+
// Key generation.

View file

@ -5,7 +5,7 @@ Subject: expose aes-{128,256}-cfb
diff --git a/crypto/cipher_extra/cipher_extra.c b/crypto/cipher_extra/cipher_extra.c diff --git a/crypto/cipher_extra/cipher_extra.c b/crypto/cipher_extra/cipher_extra.c
index 1b23ad32f8cff2a00512ba58d24b47b628e7920c..be7ef07b2c188a76890deb0f305cf92fcc57a64e 100644 index b132265bc103658dba3de6e0c3dc50d3634da5b0..588a4773437c311877f275bf3679f9688cda3c46 100644
--- a/crypto/cipher_extra/cipher_extra.c --- a/crypto/cipher_extra/cipher_extra.c
+++ b/crypto/cipher_extra/cipher_extra.c +++ b/crypto/cipher_extra/cipher_extra.c
@@ -101,10 +101,14 @@ const EVP_CIPHER *EVP_get_cipherbyname(const char *name) { @@ -101,10 +101,14 @@ const EVP_CIPHER *EVP_get_cipherbyname(const char *name) {
@ -41,44 +41,40 @@ index d3a176163303a202baeb1f95727c6ed3525439d6..21d108a7b73d454aa6b0e324df4b6708
const EVP_CIPHER *EVP_aes_128_cfb128(void) { return &aes_128_cfb128; } const EVP_CIPHER *EVP_aes_128_cfb128(void) { return &aes_128_cfb128; }
+const EVP_CIPHER *EVP_aes_256_cfb128(void) { return &aes_256_cfb128; } +const EVP_CIPHER *EVP_aes_256_cfb128(void) { return &aes_256_cfb128; }
diff --git a/decrepit/evp/evp_do_all.c b/decrepit/evp/evp_do_all.c diff --git a/decrepit/evp/evp_do_all.c b/decrepit/evp/evp_do_all.c
index acc4719b7e9c4c4461fc6142f2ae9156b407915b..8b008a401ec2f2d0673f6876609dd5786cace4c2 100644 index 53cb9d2dc8f1962a70dc12b648d27c32be8aca4b..84af06fc56e4aa72d4d48801d7c037add0221747 100644
--- a/decrepit/evp/evp_do_all.c --- a/decrepit/evp/evp_do_all.c
+++ b/decrepit/evp/evp_do_all.c +++ b/decrepit/evp/evp_do_all.c
@@ -20,10 +20,12 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher, @@ -20,8 +20,10 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
const char *unused, void *arg), const char *unused, void *arg),
void *arg) { void *arg) {
callback(EVP_aes_128_cbc(), "AES-128-CBC", NULL, arg); callback(EVP_aes_128_cbc(), "AES-128-CBC", NULL, arg);
+ callback(EVP_aes_128_cfb128(), "AES-128-CFB", NULL, arg); + callback(EVP_aes_128_cfb128(), "AES-128-CFB", NULL, arg);
callback(EVP_aes_128_ctr(), "AES-128-CTR", NULL, arg); callback(EVP_aes_192_cbc(), "AES-192-CBC", NULL, arg);
callback(EVP_aes_128_ecb(), "AES-128-ECB", NULL, arg);
callback(EVP_aes_128_ofb(), "AES-128-OFB", NULL, arg);
callback(EVP_aes_256_cbc(), "AES-256-CBC", NULL, arg); callback(EVP_aes_256_cbc(), "AES-256-CBC", NULL, arg);
+ callback(EVP_aes_256_cfb128(), "AES-256-CFB", NULL, arg); + callback(EVP_aes_256_cfb128(), "AES-256-CFB", NULL, arg);
callback(EVP_aes_128_ctr(), "AES-128-CTR", NULL, arg);
callback(EVP_aes_192_ctr(), "AES-192-CTR", NULL, arg);
callback(EVP_aes_256_ctr(), "AES-256-CTR", NULL, arg); callback(EVP_aes_256_ctr(), "AES-256-CTR", NULL, arg);
callback(EVP_aes_256_ecb(), "AES-256-ECB", NULL, arg); @@ -44,8 +46,10 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
callback(EVP_aes_256_ofb(), "AES-256-OFB", NULL, arg);
@@ -38,10 +40,12 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
// OpenSSL returns everything twice, the second time in lower case. // OpenSSL returns everything twice, the second time in lower case.
callback(EVP_aes_128_cbc(), "aes-128-cbc", NULL, arg); callback(EVP_aes_128_cbc(), "aes-128-cbc", NULL, arg);
+ callback(EVP_aes_128_cfb128(), "aes-128-cfb", NULL, arg); + callback(EVP_aes_128_cfb128(), "aes-128-cfb", NULL, arg);
callback(EVP_aes_128_ctr(), "aes-128-ctr", NULL, arg); callback(EVP_aes_192_cbc(), "aes-192-cbc", NULL, arg);
callback(EVP_aes_128_ecb(), "aes-128-ecb", NULL, arg);
callback(EVP_aes_128_ofb(), "aes-128-ofb", NULL, arg);
callback(EVP_aes_256_cbc(), "aes-256-cbc", NULL, arg); callback(EVP_aes_256_cbc(), "aes-256-cbc", NULL, arg);
+ callback(EVP_aes_256_cfb128(), "aes-256-cfb", NULL, arg); + callback(EVP_aes_256_cfb128(), "aes-256-cfb", NULL, arg);
callback(EVP_aes_128_ctr(), "aes-128-ctr", NULL, arg);
callback(EVP_aes_192_ctr(), "aes-192-ctr", NULL, arg);
callback(EVP_aes_256_ctr(), "aes-256-ctr", NULL, arg); callback(EVP_aes_256_ctr(), "aes-256-ctr", NULL, arg);
callback(EVP_aes_256_ecb(), "aes-256-ecb", NULL, arg);
callback(EVP_aes_256_ofb(), "aes-256-ofb", NULL, arg);
diff --git a/include/openssl/cipher.h b/include/openssl/cipher.h diff --git a/include/openssl/cipher.h b/include/openssl/cipher.h
index e9545c82ca7e663ae25d9e85d29acea2be54d38f..4902859cdb96012eae7956d9fc3b1dcd47a71c07 100644 index ea7a940ab3003f6919322ef1c4b7caaa9dea8588..5320d5d84c10c6396eb869dc1767b31afeeac4ef 100644
--- a/include/openssl/cipher.h --- a/include/openssl/cipher.h
+++ b/include/openssl/cipher.h +++ b/include/openssl/cipher.h
@@ -421,6 +421,7 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_ofb(void); @@ -424,6 +424,7 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede3_ecb(void);
// EVP_aes_128_cfb128 is only available in decrepit. // EVP_aes_128_cfb128 is only available in decrepit.
OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_cfb128(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_cfb128(void);
+OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_cfb128(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_cfb128(void);
// The following flags do nothing and are included only to make it easier to // EVP_bf_ecb is Blowfish in ECB mode and is only available in decrepit.
// compile code with BoringSSL. OPENSSL_EXPORT const EVP_CIPHER *EVP_bf_ecb(void);

View file

@ -62,10 +62,10 @@ index f2fa349c2b32ae88766624af3109ece4b1d69909..bcaed59c5401bef071acba9b9919d906
+ +
#undef CHECK #undef CHECK
diff --git a/decrepit/evp/evp_do_all.c b/decrepit/evp/evp_do_all.c diff --git a/decrepit/evp/evp_do_all.c b/decrepit/evp/evp_do_all.c
index 38b8f9f78f76050174096740596ac59a0fe18757..acc4719b7e9c4c4461fc6142f2ae9156b407915b 100644 index d540144b293297791c087e0b968a47d368a73695..53cb9d2dc8f1962a70dc12b648d27c32be8aca4b 100644
--- a/decrepit/evp/evp_do_all.c --- a/decrepit/evp/evp_do_all.c
+++ b/decrepit/evp/evp_do_all.c +++ b/decrepit/evp/evp_do_all.c
@@ -66,6 +66,7 @@ void EVP_MD_do_all_sorted(void (*callback)(const EVP_MD *cipher, @@ -78,6 +78,7 @@ void EVP_MD_do_all_sorted(void (*callback)(const EVP_MD *cipher,
callback(EVP_sha256(), "SHA256", NULL, arg); callback(EVP_sha256(), "SHA256", NULL, arg);
callback(EVP_sha384(), "SHA384", NULL, arg); callback(EVP_sha384(), "SHA384", NULL, arg);
callback(EVP_sha512(), "SHA512", NULL, arg); callback(EVP_sha512(), "SHA512", NULL, arg);
@ -73,7 +73,7 @@ index 38b8f9f78f76050174096740596ac59a0fe18757..acc4719b7e9c4c4461fc6142f2ae9156
callback(EVP_md4(), "md4", NULL, arg); callback(EVP_md4(), "md4", NULL, arg);
callback(EVP_md5(), "md5", NULL, arg); callback(EVP_md5(), "md5", NULL, arg);
@@ -74,4 +75,5 @@ void EVP_MD_do_all_sorted(void (*callback)(const EVP_MD *cipher, @@ -86,4 +87,5 @@ void EVP_MD_do_all_sorted(void (*callback)(const EVP_MD *cipher,
callback(EVP_sha256(), "sha256", NULL, arg); callback(EVP_sha256(), "sha256", NULL, arg);
callback(EVP_sha384(), "sha384", NULL, arg); callback(EVP_sha384(), "sha384", NULL, arg);
callback(EVP_sha512(), "sha512", NULL, arg); callback(EVP_sha512(), "sha512", NULL, arg);

View file

@ -1,85 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Shelley Vohr <shelley.vohr@gmail.com>
Date: Thu, 7 Feb 2019 11:11:35 -0800
Subject: sync EVP_get_cipherbyname with EVP_do_all_sorted
EVP_get_cipherbyname should work on everything that EVP_do_all_sorted
lists, and conversely, there should be nothing that
EVP_get_cipherbyname works on that EVP_do_all_sorted doesn't list.
This thus does that.
diff --git a/crypto/cipher_extra/cipher_extra.c b/crypto/cipher_extra/cipher_extra.c
index be7ef07b2c188a76890deb0f305cf92fcc57a64e..588a4773437c311877f275bf3679f9688cda3c46 100644
--- a/crypto/cipher_extra/cipher_extra.c
+++ b/crypto/cipher_extra/cipher_extra.c
@@ -133,6 +133,14 @@ const EVP_CIPHER *EVP_get_cipherbyname(const char *name) {
return EVP_aes_192_ofb();
} else if (OPENSSL_strcasecmp(name, "aes-256-ofb") == 0) {
return EVP_aes_256_ofb();
+ } else if (OPENSSL_strcasecmp(name, "des-ecb") == 0) {
+ return EVP_des_ecb();
+ } else if (OPENSSL_strcasecmp(name, "des-ede") == 0) {
+ return EVP_des_ede();
+ } else if (OPENSSL_strcasecmp(name, "des-ede-cbc") == 0) {
+ return EVP_des_ede_cbc();
+ } else if (OPENSSL_strcasecmp(name, "rc2-cbc") == 0) {
+ return EVP_rc2_cbc();
}
return NULL;
diff --git a/decrepit/evp/evp_do_all.c b/decrepit/evp/evp_do_all.c
index 8b008a401ec2f2d0673f6876609dd5786cace4c2..3e88b29cb599730d2e8682070aaa4be38d06ed80 100644
--- a/decrepit/evp/evp_do_all.c
+++ b/decrepit/evp/evp_do_all.c
@@ -21,15 +21,21 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
void *arg) {
callback(EVP_aes_128_cbc(), "AES-128-CBC", NULL, arg);
callback(EVP_aes_128_cfb128(), "AES-128-CFB", NULL, arg);
- callback(EVP_aes_128_ctr(), "AES-128-CTR", NULL, arg);
- callback(EVP_aes_128_ecb(), "AES-128-ECB", NULL, arg);
- callback(EVP_aes_128_ofb(), "AES-128-OFB", NULL, arg);
+ callback(EVP_aes_192_cbc(), "AES-192-CBC", NULL, arg);
callback(EVP_aes_256_cbc(), "AES-256-CBC", NULL, arg);
+ callback(EVP_aes_128_ctr(), "AES-128-CTR", NULL, arg);
+ callback(EVP_aes_192_ctr(), "AES-192-CTR", NULL, arg);
callback(EVP_aes_256_cfb128(), "AES-256-CFB", NULL, arg);
callback(EVP_aes_256_ctr(), "AES-256-CTR", NULL, arg);
+ callback(EVP_aes_128_ecb(), "AES-128-ECB", NULL, arg);
+ callback(EVP_aes_192_ecb(), "AES-192-ECB", NULL, arg);
callback(EVP_aes_256_ecb(), "AES-256-ECB", NULL, arg);
+ callback(EVP_aes_128_ofb(), "AES-128-OFB", NULL, arg);
+ callback(EVP_aes_192_ofb(), "AES-192-OFB", NULL, arg);
callback(EVP_aes_256_ofb(), "AES-256-OFB", NULL, arg);
- callback(EVP_aes_256_xts(), "AES-256-XTS", NULL, arg);
+ callback(EVP_aes_128_gcm(), "AES-128-GCM", NULL, arg);
+ callback(EVP_aes_192_gcm(), "AES-192-GCM", NULL, arg);
+ callback(EVP_aes_256_gcm(), "AES-256-GCM", NULL, arg);
callback(EVP_des_cbc(), "DES-CBC", NULL, arg);
callback(EVP_des_ecb(), "DES-ECB", NULL, arg);
callback(EVP_des_ede(), "DES-EDE", NULL, arg);
@@ -41,15 +47,21 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
// OpenSSL returns everything twice, the second time in lower case.
callback(EVP_aes_128_cbc(), "aes-128-cbc", NULL, arg);
callback(EVP_aes_128_cfb128(), "aes-128-cfb", NULL, arg);
- callback(EVP_aes_128_ctr(), "aes-128-ctr", NULL, arg);
- callback(EVP_aes_128_ecb(), "aes-128-ecb", NULL, arg);
- callback(EVP_aes_128_ofb(), "aes-128-ofb", NULL, arg);
+ callback(EVP_aes_192_cbc(), "aes-192-cbc", NULL, arg);
callback(EVP_aes_256_cbc(), "aes-256-cbc", NULL, arg);
+ callback(EVP_aes_128_ctr(), "aes-128-ctr", NULL, arg);
+ callback(EVP_aes_192_ctr(), "aes-192-ctr", NULL, arg);
callback(EVP_aes_256_cfb128(), "aes-256-cfb", NULL, arg);
callback(EVP_aes_256_ctr(), "aes-256-ctr", NULL, arg);
+ callback(EVP_aes_128_ecb(), "aes-128-ecb", NULL, arg);
+ callback(EVP_aes_192_ecb(), "aes-192-ecb", NULL, arg);
callback(EVP_aes_256_ecb(), "aes-256-ecb", NULL, arg);
+ callback(EVP_aes_128_ofb(), "aes-128-ofb", NULL, arg);
+ callback(EVP_aes_192_ofb(), "aes-192-ofb", NULL, arg);
callback(EVP_aes_256_ofb(), "aes-256-ofb", NULL, arg);
- callback(EVP_aes_256_xts(), "aes-256-xts", NULL, arg);
+ callback(EVP_aes_128_gcm(), "aes-128-gcm", NULL, arg);
+ callback(EVP_aes_192_gcm(), "aes-192-gcm", NULL, arg);
+ callback(EVP_aes_256_gcm(), "aes-256-gcm", NULL, arg);
callback(EVP_des_cbc(), "des-cbc", NULL, arg);
callback(EVP_des_ecb(), "des-ecb", NULL, arg);
callback(EVP_des_ede(), "des-ede", NULL, arg);

View file

@ -69,9 +69,7 @@ disable_color_correct_rendering.patch
disable_time_ticks_dcheck.patch disable_time_ticks_dcheck.patch
autofill_size_calculation.patch autofill_size_calculation.patch
revert_build_swiftshader_for_arm32.patch revert_build_swiftshader_for_arm32.patch
fix_backup_includes_for_ptrace_get_thread_area_on_arm_arm64.patch
color_chooser_mac.patch
color_chooser_win.patch
fix_disable_usage_of_abort_report_np_in_mas_builds.patch fix_disable_usage_of_abort_report_np_in_mas_builds.patch
fix_disable_usage_of_pthread_fchdir_np_and_pthread_chdir_np_in_mas.patch fix_disable_usage_of_pthread_fchdir_np_and_pthread_chdir_np_in_mas.patch
fix_disable_usage_of_setapplicationisdaemon_and.patch fix_disable_usage_of_setapplicationisdaemon_and.patch
fix_build_on_arm.patch

View file

@ -39,10 +39,10 @@ index 2aef366ac8194aa261cbca6abc051f7da8a988d3..3c7d66c81032636abcca4f1538ce9b7f
GIN_EXPORT static ArrayBufferAllocator* SharedInstance(); GIN_EXPORT static ArrayBufferAllocator* SharedInstance();
diff --git a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc diff --git a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
index bec05f5222c6653f6f42c87a2f71e4aa0f244b5e..96533b347ca9e1e140fb019a2b95093d5e1aee73 100644 index 4a8ed5153449a668c810613fc384eb7952772db1..a426fb833c6b2ccc50f2738dab1764f0306a180f 100644
--- a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc --- a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
+++ b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc +++ b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
@@ -649,6 +649,10 @@ class ArrayBufferAllocator : public v8::ArrayBuffer::Allocator { @@ -650,6 +650,10 @@ class ArrayBufferAllocator : public v8::ArrayBuffer::Allocator {
size, WTF::ArrayBufferContents::kDontInitialize); size, WTF::ArrayBufferContents::kDontInitialize);
} }
@ -54,10 +54,10 @@ index bec05f5222c6653f6f42c87a2f71e4aa0f244b5e..96533b347ca9e1e140fb019a2b95093d
WTF::ArrayBufferContents::FreeMemory(data); WTF::ArrayBufferContents::FreeMemory(data);
} }
diff --git a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc diff --git a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc
index 5a8dbf109f4f7eb682c23bf24c391b70a7717a0c..e0b33e815f2eb98aa494a8489543acdb873e1597 100644 index 0031242152ce5190b0dfc77b53af2d984e5fad82..a6370ec793ce6c38eb7dab189583ea11cca51c1f 100644
--- a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc --- a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc
+++ b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc +++ b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc
@@ -122,6 +122,11 @@ void* ArrayBufferContents::AllocateMemoryOrNull(size_t size, @@ -130,6 +130,11 @@ void* ArrayBufferContents::AllocateMemoryOrNull(size_t size,
return AllocateMemoryWithFlags(size, policy, base::PartitionAllocReturnNull); return AllocateMemoryWithFlags(size, policy, base::PartitionAllocReturnNull);
} }
@ -70,10 +70,10 @@ index 5a8dbf109f4f7eb682c23bf24c391b70a7717a0c..e0b33e815f2eb98aa494a8489543acdb
Partitions::ArrayBufferPartition()->Free(data); Partitions::ArrayBufferPartition()->Free(data);
} }
diff --git a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h diff --git a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h
index 3cc1abe8e48c8e45d1f3ebb98a6a6ea1a4e3fbd9..1e2438cc6da97a89fefc86148bb1037d3c84f765 100644 index 98bda6647e7b1516ab6114ebc63f5c60da3ebbb7..37dacadc262e15714f8e3e090b780c8abf22283e 100644
--- a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h --- a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h
+++ b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h +++ b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h
@@ -134,6 +134,7 @@ class WTF_EXPORT ArrayBufferContents { @@ -135,6 +135,7 @@ class WTF_EXPORT ArrayBufferContents {
void CopyTo(ArrayBufferContents& other); void CopyTo(ArrayBufferContents& other);
static void* AllocateMemoryOrNull(size_t, InitializationPolicy); static void* AllocateMemoryOrNull(size_t, InitializationPolicy);

View file

@ -6,10 +6,10 @@ Subject: allow_webview_file_url.patch
Allow webview to load non-web URLs. Allow webview to load non-web URLs.
diff --git a/content/browser/loader/resource_dispatcher_host_impl.cc b/content/browser/loader/resource_dispatcher_host_impl.cc diff --git a/content/browser/loader/resource_dispatcher_host_impl.cc b/content/browser/loader/resource_dispatcher_host_impl.cc
index a206be71b8d9f28d659000cd2ea72cdb8f876e07..f4ad084900723a5c0cf78affae7744d8039a8395 100644 index f6d8cf0e1b7373498739d6821a4b6b2725cf3c5c..3144e81cdb79b0b235385701c2eb81b6b9017213 100644
--- a/content/browser/loader/resource_dispatcher_host_impl.cc --- a/content/browser/loader/resource_dispatcher_host_impl.cc
+++ b/content/browser/loader/resource_dispatcher_host_impl.cc +++ b/content/browser/loader/resource_dispatcher_host_impl.cc
@@ -1447,6 +1447,8 @@ void ResourceDispatcherHostImpl::BeginNavigationRequest( @@ -1536,6 +1536,8 @@ void ResourceDispatcherHostImpl::BeginNavigationRequest(
!policy->IsWebSafeScheme(info.common_params.url.scheme()) && !policy->IsWebSafeScheme(info.common_params.url.scheme()) &&
!is_external_protocol; !is_external_protocol;

View file

@ -5,10 +5,10 @@ Subject: blink-worker-enable-csp-in-file-scheme.patch
diff --git a/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc b/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc diff --git a/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc b/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc
index c404b0a5966416599a62075e0a616fda368e07ec..98a3e02f1335dd7256b7926bc6e7774c79e00d4a 100644 index 6575793a7df4eed2b1cc1cd59c559c591648c478..bf00aeb1df1dea4668a2d6645aefb578d1fc86e2 100644
--- a/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc --- a/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc
+++ b/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc +++ b/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc
@@ -308,7 +308,6 @@ void WorkerClassicScriptLoader::ProcessContentSecurityPolicy( @@ -307,7 +307,6 @@ void WorkerClassicScriptLoader::ProcessContentSecurityPolicy(
// document (which is implemented in WorkerMessagingProxy, and // document (which is implemented in WorkerMessagingProxy, and
// m_contentSecurityPolicy should be left as nullptr to inherit the policy). // m_contentSecurityPolicy should be left as nullptr to inherit the policy).
if (!response.CurrentRequestUrl().ProtocolIs("blob") && if (!response.CurrentRequestUrl().ProtocolIs("blob") &&

View file

@ -7,10 +7,10 @@ This is used by editors to obtain the filesystem path from a dragged file. See
documentation at https://electronjs.org/docs/api/file-object documentation at https://electronjs.org/docs/api/file-object
diff --git a/third_party/blink/renderer/core/fileapi/file.h b/third_party/blink/renderer/core/fileapi/file.h diff --git a/third_party/blink/renderer/core/fileapi/file.h b/third_party/blink/renderer/core/fileapi/file.h
index 2ca09ab8903d56b466e186203279e865ed4dd058..d522b53111a1c452220a1ca08ffcc7206adaa309 100644 index 474c226bcd74a4f9d0d3e2bc2373ccfb1970fc24..5ee32f4b4ffebe4a9824726d2f06f509ded9dcb5 100644
--- a/third_party/blink/renderer/core/fileapi/file.h --- a/third_party/blink/renderer/core/fileapi/file.h
+++ b/third_party/blink/renderer/core/fileapi/file.h +++ b/third_party/blink/renderer/core/fileapi/file.h
@@ -193,6 +193,9 @@ class CORE_EXPORT File final : public Blob { @@ -202,6 +202,9 @@ class CORE_EXPORT File final : public Blob {
} }
const String& name() const { return name_; } const String& name() const { return name_; }

View file

@ -10,10 +10,10 @@ to fix electron/electron#13787. The backport landed in Chromium 67 but the
DidCreateScriptContext re-ordering needs to be upstreamed or kept indefinitely DidCreateScriptContext re-ordering needs to be upstreamed or kept indefinitely
diff --git a/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc b/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc diff --git a/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc b/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc
index 9c3e848f01aef165c21a6d6043b6f9038d31cb66..7c16e8da1052b50f36da8102fdd8b9206dd7883d 100644 index ea4d47ef7ed58f2be638a6fbae7c12e1ee5b4c77..c02e5fcf72486600702a5ac39af2a13c1b255b4b 100644
--- a/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc --- a/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc
+++ b/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc +++ b/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc
@@ -190,11 +190,10 @@ void LocalWindowProxy::Initialize() { @@ -202,11 +202,10 @@ void LocalWindowProxy::Initialize() {
GetFrame()->IsMainFrame()); GetFrame()->IsMainFrame());
MainThreadDebugger::Instance()->ContextCreated(script_state_, GetFrame(), MainThreadDebugger::Instance()->ContextCreated(script_state_, GetFrame(),
origin); origin);

View file

@ -14,10 +14,10 @@ when there is code doing that.
This patch reverts the change to fix the crash in Electron. This patch reverts the change to fix the crash in Electron.
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
index 9c8ffb99f78ef29df08e139551af984dc23e9de2..8196880b6da930557d22f4c29a6de35c1aa7a763 100644 index d696925e6f5dae9ca6406a15766826ee8e42475c..f592b0e7fa3c32d66dd0247e1492a973a1583d59 100644
--- a/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -403,10 +403,6 @@ void LocalFrame::DetachImpl(FrameDetachType type) { @@ -409,10 +409,6 @@ void LocalFrame::DetachImpl(FrameDetachType type) {
} }
CHECK(!view_ || !view_->IsAttached()); CHECK(!view_ || !view_->IsAttached());
@ -28,7 +28,7 @@ index 9c8ffb99f78ef29df08e139551af984dc23e9de2..8196880b6da930557d22f4c29a6de35c
if (!Client()) if (!Client())
return; return;
@@ -424,6 +420,10 @@ void LocalFrame::DetachImpl(FrameDetachType type) { @@ -430,6 +426,10 @@ void LocalFrame::DetachImpl(FrameDetachType type) {
// Notify ScriptController that the frame is closing, since its cleanup ends // Notify ScriptController that the frame is closing, since its cleanup ends
// up calling back to LocalFrameClient via WindowProxy. // up calling back to LocalFrameClient via WindowProxy.
GetScriptController().ClearForClose(); GetScriptController().ClearForClose();

View file

@ -5,10 +5,10 @@ Subject: blink_world_context.patch
diff --git a/third_party/blink/public/web/web_local_frame.h b/third_party/blink/public/web/web_local_frame.h diff --git a/third_party/blink/public/web/web_local_frame.h b/third_party/blink/public/web/web_local_frame.h
index 0c72c57ac767b84626476e929308148714098c4e..1fb098418471a6c9919ec40792bbb8676d3a8932 100644 index fa0fca68d181f6783bb88e99f42697d5efbd3a49..93630884c3a3a4441645d76742796322f39653c3 100644
--- a/third_party/blink/public/web/web_local_frame.h --- a/third_party/blink/public/web/web_local_frame.h
+++ b/third_party/blink/public/web/web_local_frame.h +++ b/third_party/blink/public/web/web_local_frame.h
@@ -341,6 +341,9 @@ class WebLocalFrame : public WebFrame { @@ -348,6 +348,9 @@ class WebLocalFrame : public WebFrame {
// be calling this API. // be calling this API.
virtual v8::Local<v8::Context> MainWorldScriptContext() const = 0; virtual v8::Local<v8::Context> MainWorldScriptContext() const = 0;
@ -19,10 +19,10 @@ index 0c72c57ac767b84626476e929308148714098c4e..1fb098418471a6c9919ec40792bbb867
// that the script evaluated to with callback. Script execution can be // that the script evaluated to with callback. Script execution can be
// suspend. // suspend.
diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
index 6197e91bd3c15d82b71227b96ecc1e8a36545b99..d2c607da86c2f18a18746fd2d9b5736d36738dc2 100644 index 699af61cbfc80a0e88ccf692c0a4eccca12b0c8a..68fbdd861dc991bf1ab91775336e7a9f6889a0a7 100644
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc --- a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc +++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
@@ -888,6 +888,13 @@ v8::Local<v8::Object> WebLocalFrameImpl::GlobalProxy() const { @@ -891,6 +891,13 @@ v8::Local<v8::Object> WebLocalFrameImpl::GlobalProxy() const {
return MainWorldScriptContext()->Global(); return MainWorldScriptContext()->Global();
} }
@ -37,10 +37,10 @@ index 6197e91bd3c15d82b71227b96ecc1e8a36545b99..d2c607da86c2f18a18746fd2d9b5736d
return BindingSecurity::ShouldAllowAccessToFrame( return BindingSecurity::ShouldAllowAccessToFrame(
CurrentDOMWindow(V8PerIsolateData::MainThreadIsolate()), CurrentDOMWindow(V8PerIsolateData::MainThreadIsolate()),
diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.h b/third_party/blink/renderer/core/frame/web_local_frame_impl.h diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.h b/third_party/blink/renderer/core/frame/web_local_frame_impl.h
index d5e92aad674932782b25767ec084cb05bd39eaef..1cdb948af95c7716ad9b53ee33ea11c746f68443 100644 index 1d365801c7094a1ea091b1ecfea7ab3d3527bcec..b0df9b3ca6d33fd187a3cbcd750603e4a7db98d3 100644
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.h --- a/third_party/blink/renderer/core/frame/web_local_frame_impl.h
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.h +++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.h
@@ -145,6 +145,8 @@ class CORE_EXPORT WebLocalFrameImpl final @@ -148,6 +148,8 @@ class CORE_EXPORT WebLocalFrameImpl final
int argc, int argc,
v8::Local<v8::Value> argv[]) override; v8::Local<v8::Value> argv[]) override;
v8::Local<v8::Context> MainWorldScriptContext() const override; v8::Local<v8::Context> MainWorldScriptContext() const override;

View file

@ -6,7 +6,7 @@ Subject: boringssl BUILD.gn
Build BoringSSL with some extra functions that nodejs needs. Build BoringSSL with some extra functions that nodejs needs.
diff --git a/third_party/boringssl/BUILD.gn b/third_party/boringssl/BUILD.gn diff --git a/third_party/boringssl/BUILD.gn b/third_party/boringssl/BUILD.gn
index 8d460717d4c5d2ee56a10689f3d4cead9740ae36..fe8753c128759b9b0421238cabf89a990e600735 100644 index 051b3ed07fa7d4ec2e5f9200dab6843176e55d56..edf567e79c88fbe66acf4aabd3952cb8adcab4af 100644
--- a/third_party/boringssl/BUILD.gn --- a/third_party/boringssl/BUILD.gn
+++ b/third_party/boringssl/BUILD.gn +++ b/third_party/boringssl/BUILD.gn
@@ -45,6 +45,19 @@ config("no_asm_config") { @@ -45,6 +45,19 @@ config("no_asm_config") {

View file

@ -29,7 +29,7 @@ diff --git a/content/browser/renderer_host/browser_compositor_view_mac.mm b/cont
index 0817b4eca4f4e6f7f5d250589c1e4dbcc068237c..dcc2340e59771e8d73de7e97fa2371d8bec7b149 100644 index 0817b4eca4f4e6f7f5d250589c1e4dbcc068237c..dcc2340e59771e8d73de7e97fa2371d8bec7b149 100644
--- a/content/browser/renderer_host/browser_compositor_view_mac.mm --- a/content/browser/renderer_host/browser_compositor_view_mac.mm
+++ b/content/browser/renderer_host/browser_compositor_view_mac.mm +++ b/content/browser/renderer_host/browser_compositor_view_mac.mm
@@ -79,6 +79,12 @@ BrowserCompositorMac::~BrowserCompositorMac() { @@ -79,6 +79,12 @@
DCHECK_EQ(1u, num_erased); DCHECK_EQ(1u, num_erased);
} }

View file

@ -5,10 +5,10 @@ Subject: can_create_window.patch
diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc
index fcda9392b8a0cb24f80d64280432405f0b7d29e5..b804a7d118c2de6aa775d1b94b70f8208442261f 100644 index ca7881b3b3cd06b9dc89abc477d560a288fe5423..69081399bf0f746a0fd447ac5f8ec360664195ad 100644
--- a/content/browser/frame_host/render_frame_host_impl.cc --- a/content/browser/frame_host/render_frame_host_impl.cc
+++ b/content/browser/frame_host/render_frame_host_impl.cc +++ b/content/browser/frame_host/render_frame_host_impl.cc
@@ -3746,6 +3746,7 @@ void RenderFrameHostImpl::CreateNewWindow( @@ -3654,6 +3654,7 @@ void RenderFrameHostImpl::CreateNewWindow(
last_committed_origin_, params->window_container_type, last_committed_origin_, params->window_container_type,
params->target_url, params->referrer.To<Referrer>(), params->target_url, params->referrer.To<Referrer>(),
params->frame_name, params->disposition, *params->features, params->frame_name, params->disposition, *params->features,
@ -17,10 +17,10 @@ index fcda9392b8a0cb24f80d64280432405f0b7d29e5..b804a7d118c2de6aa775d1b94b70f820
&no_javascript_access); &no_javascript_access);
diff --git a/content/common/frame.mojom b/content/common/frame.mojom diff --git a/content/common/frame.mojom b/content/common/frame.mojom
index e566a15b798e2586fa4fae3c4db97ce5f4f2f09f..08f52fd73bc9b6231a75f7804bb9b9f367bca62e 100644 index f660470b2c612f89a3ad9f0ada4ab13710705b57..45c38198e8fcc44d71ef9440e38d301f8d4951a3 100644
--- a/content/common/frame.mojom --- a/content/common/frame.mojom
+++ b/content/common/frame.mojom +++ b/content/common/frame.mojom
@@ -226,6 +226,10 @@ struct CreateNewWindowParams { @@ -229,6 +229,10 @@ struct CreateNewWindowParams {
// The window features to use for the new window. // The window features to use for the new window.
blink.mojom.WindowFeatures features; blink.mojom.WindowFeatures features;
@ -32,10 +32,10 @@ index e566a15b798e2586fa4fae3c4db97ce5f4f2f09f..08f52fd73bc9b6231a75f7804bb9b9f3
// Operation result when the renderer asks the browser to create a new window. // Operation result when the renderer asks the browser to create a new window.
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
index 07d71b3a06f9b3b7ab4ea4f16a27fc82e51c2a6c..9d00218ae972b34073c84f2de78dee934962c3d8 100644 index b37de5fbf84131cdcb2ee073e746fb18f0f1fc35..b6c528126bde8c7ee8cdf8440ae51cfe1a742b9a 100644
--- a/content/public/browser/content_browser_client.cc --- a/content/public/browser/content_browser_client.cc
+++ b/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc
@@ -494,6 +494,8 @@ bool ContentBrowserClient::CanCreateWindow( @@ -501,6 +501,8 @@ bool ContentBrowserClient::CanCreateWindow(
const std::string& frame_name, const std::string& frame_name,
WindowOpenDisposition disposition, WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features, const blink::mojom::WindowFeatures& features,
@ -45,18 +45,18 @@ index 07d71b3a06f9b3b7ab4ea4f16a27fc82e51c2a6c..9d00218ae972b34073c84f2de78dee93
bool opener_suppressed, bool opener_suppressed,
bool* no_javascript_access) { bool* no_javascript_access) {
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
index eaa7d8b25141f8f2d461f0b37054c772c8df6297..09aca495389e48a8dbc1ea45b8bb636aa13d2486 100644 index 7fc0a70f4e79544a9cc8dfcc1fa5f670261c4e56..72944bc96a2ec71be1b20fa68e7994445f225824 100644
--- a/content/public/browser/content_browser_client.h --- a/content/public/browser/content_browser_client.h
+++ b/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h
@@ -171,6 +171,7 @@ class RenderFrameHost; @@ -175,6 +175,7 @@ class RenderFrameHost;
class RenderProcessHost; class RenderProcessHost;
class RenderViewHost; class RenderViewHost;
class ResourceContext; class ResourceContext;
+class ResourceRequestBody; +class ResourceRequestBody;
class SerialDelegate;
class ServiceManagerConnection; class ServiceManagerConnection;
class SiteInstance; class SiteInstance;
class SpeechRecognitionManagerDelegate; @@ -775,6 +776,8 @@ class CONTENT_EXPORT ContentBrowserClient {
@@ -788,6 +789,8 @@ class CONTENT_EXPORT ContentBrowserClient {
const std::string& frame_name, const std::string& frame_name,
WindowOpenDisposition disposition, WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features, const blink::mojom::WindowFeatures& features,
@ -66,7 +66,7 @@ index eaa7d8b25141f8f2d461f0b37054c772c8df6297..09aca495389e48a8dbc1ea45b8bb636a
bool opener_suppressed, bool opener_suppressed,
bool* no_javascript_access); bool* no_javascript_access);
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
index eb0a039e0fa10a1e48687a3a9b6fc5fdb273b66f..be7cdc11cf9e8d40a438fd09990257d934d64ce4 100644 index 91c52f9d202efd6232ac602e5dc847737695471d..b71bbc613bdd573546b2cfa89b98220a434169c5 100644
--- a/content/renderer/render_view_impl.cc --- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc +++ b/content/renderer/render_view_impl.cc
@@ -76,6 +76,7 @@ @@ -76,6 +76,7 @@
@ -77,7 +77,7 @@ index eb0a039e0fa10a1e48687a3a9b6fc5fdb273b66f..be7cdc11cf9e8d40a438fd09990257d9
#include "content/renderer/media/audio/audio_device_factory.h" #include "content/renderer/media/audio/audio_device_factory.h"
#include "content/renderer/media/stream/media_stream_device_observer.h" #include "content/renderer/media/stream/media_stream_device_observer.h"
#include "content/renderer/media/video_capture_impl_manager.h" #include "content/renderer/media/video_capture_impl_manager.h"
@@ -1347,6 +1348,8 @@ WebView* RenderViewImpl::CreateView( @@ -1346,6 +1347,8 @@ WebView* RenderViewImpl::CreateView(
} }
params->features = ConvertWebWindowFeaturesToMojoWindowFeatures(features); params->features = ConvertWebWindowFeaturesToMojoWindowFeatures(features);
@ -87,10 +87,10 @@ index eb0a039e0fa10a1e48687a3a9b6fc5fdb273b66f..be7cdc11cf9e8d40a438fd09990257d9
// moved on send. // moved on send.
bool is_background_tab = bool is_background_tab =
diff --git a/content/shell/browser/web_test/web_test_content_browser_client.cc b/content/shell/browser/web_test/web_test_content_browser_client.cc diff --git a/content/shell/browser/web_test/web_test_content_browser_client.cc b/content/shell/browser/web_test/web_test_content_browser_client.cc
index 5352c9ccd0cf0cc13fd06397bef1a91dc987b46c..486ce0eb0400f5dd0bac5eda9f7def226e7efbba 100644 index 9e738f90c516cfec18816a183f1a2ab615827307..7e04c82967e3458be32345e683af33b9abc5289e 100644
--- a/content/shell/browser/web_test/web_test_content_browser_client.cc --- a/content/shell/browser/web_test/web_test_content_browser_client.cc
+++ b/content/shell/browser/web_test/web_test_content_browser_client.cc +++ b/content/shell/browser/web_test/web_test_content_browser_client.cc
@@ -298,6 +298,8 @@ bool WebTestContentBrowserClient::CanCreateWindow( @@ -299,6 +299,8 @@ bool WebTestContentBrowserClient::CanCreateWindow(
const std::string& frame_name, const std::string& frame_name,
WindowOpenDisposition disposition, WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features, const blink::mojom::WindowFeatures& features,
@ -100,7 +100,7 @@ index 5352c9ccd0cf0cc13fd06397bef1a91dc987b46c..486ce0eb0400f5dd0bac5eda9f7def22
bool opener_suppressed, bool opener_suppressed,
bool* no_javascript_access) { bool* no_javascript_access) {
diff --git a/content/shell/browser/web_test/web_test_content_browser_client.h b/content/shell/browser/web_test/web_test_content_browser_client.h diff --git a/content/shell/browser/web_test/web_test_content_browser_client.h b/content/shell/browser/web_test/web_test_content_browser_client.h
index ad388b224dc8dec395a9ea82c67ad4031851a2cc..d5cfe02d61dd28c49f4a5e2714f03cd4ebe9e119 100644 index 1eeb9dafd62e163c7458352de31c62dbd1293f32..0d46e75cdf0a1ef573e733432a4613da850d6f4d 100644
--- a/content/shell/browser/web_test/web_test_content_browser_client.h --- a/content/shell/browser/web_test/web_test_content_browser_client.h
+++ b/content/shell/browser/web_test/web_test_content_browser_client.h +++ b/content/shell/browser/web_test/web_test_content_browser_client.h
@@ -67,6 +67,8 @@ class WebTestContentBrowserClient : public ShellContentBrowserClient { @@ -67,6 +67,8 @@ class WebTestContentBrowserClient : public ShellContentBrowserClient {

View file

@ -1,186 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Benedek Heilig <benecene@gmail.com>
Date: Thu, 21 Feb 2019 17:04:30 +0000
Subject: fix a crash when using color chooser on macos
Backports an upstream fix I made to the color chooser dialog on macos.
This can be removed once that fix lands in a chromium version we use.
Below is the original commit message:
Fix crash when closing color chooser dialog on macos
For some reason, closing the color chooser dialog caused a crash on
macos. By using NSNotificationCenter instead of providing a delegate
the crash goes away. I got the idea for this from the comment about the
__target method already in the code.
Change-Id: Ide35a455ff12decc9dd83b30c80b584ab376242b
diff --git a/AUTHORS b/AUTHORS
index 374b1a177f30d0c4b415d5c9c0fc4e4673414d39..436be8a093831020453285f0c476dcf9bd42fe8d 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -114,6 +114,7 @@ Ben Coe <bencoe@gmail.com>
Ben Fiola <benfiola@gmail.com>
Ben Karel <eschew@gmail.com>
Ben Noordhuis <ben@strongloop.com>
+Benedek Heilig <benecene@gmail.com>
Benjamin Dupont <bedupont@cisco.com>
Benjamin Jemlich <pcgod99@gmail.com>
Bernard Cafarelli <voyageur@gentoo.org>
diff --git a/chrome/browser/ui/cocoa/color_chooser_mac.h b/chrome/browser/ui/cocoa/color_chooser_mac.h
index 511000dc7855938ceab31694149ddf9e2125e0e4..9dbcc9fe41786555f0fb16ac47c71ee8851c8dd5 100644
--- a/chrome/browser/ui/cocoa/color_chooser_mac.h
+++ b/chrome/browser/ui/cocoa/color_chooser_mac.h
@@ -15,7 +15,7 @@ class ColorChooserMac;
// A Listener class to act as a event target for NSColorPanel and send
// the results to the C++ class, ColorChooserMac.
-@interface ColorPanelCocoa : NSObject<NSWindowDelegate> {
+@interface ColorPanelCocoa : NSObject {
@protected
// We don't call DidChooseColor if the change wasn't caused by the user
// interacting with the panel.
@@ -26,6 +26,8 @@ class ColorChooserMac;
- (id)initWithChooser:(ColorChooserMac*)chooser;
+- (void)windowWillClose:(NSNotification*)notification;
+
// Called from NSColorPanel.
- (void)didChooseColor:(NSColorPanel*)panel;
@@ -45,7 +47,7 @@ class ColorChooserMac : public content::ColorChooser {
// Called from ColorPanelCocoa.
void DidChooseColorInColorPanel(SkColor color);
- void DidCloseColorPabel();
+ void DidCloseColorPanel();
// Set the color programmatically.
void SetSelectedColor(SkColor color) override;
diff --git a/chrome/browser/ui/cocoa/color_chooser_mac.mm b/chrome/browser/ui/cocoa/color_chooser_mac.mm
index bf47154f0a880f1c6143065e5c6d060f1df73765..e7cdab7a23d96345cc6e8ec578a8616d132b7d51 100644
--- a/chrome/browser/ui/cocoa/color_chooser_mac.mm
+++ b/chrome/browser/ui/cocoa/color_chooser_mac.mm
@@ -39,16 +39,18 @@ void ColorChooserMac::DidChooseColorInColorPanel(SkColor color) {
web_contents_->DidChooseColorInColorChooser(color);
}
-void ColorChooserMac::DidCloseColorPabel() {
+void ColorChooserMac::DidCloseColorPanel() {
End();
}
void ColorChooserMac::End() {
- panel_.reset();
- DCHECK(current_color_chooser_ == this);
- current_color_chooser_ = NULL;
- if (web_contents_)
+ if (panel_) {
+ panel_.reset();
+ DCHECK(current_color_chooser_ == this);
+ current_color_chooser_ = NULL;
+ if (web_contents_)
web_contents_->DidEndColorChooser();
+ }
}
void ColorChooserMac::SetSelectedColor(SkColor color) {
@@ -67,9 +69,14 @@ void ColorChooserMac::SetSelectedColor(SkColor color) {
chooser_ = chooser;
NSColorPanel* panel = [NSColorPanel sharedColorPanel];
[panel setShowsAlpha:NO];
- [panel setDelegate:self];
[panel setTarget:self];
[panel setAction:@selector(didChooseColor:)];
+
+ [[NSNotificationCenter defaultCenter]
+ addObserver:self
+ selector:@selector(windowWillClose:)
+ name:NSWindowWillCloseNotification
+ object:panel];
}
return self;
}
@@ -82,19 +89,21 @@ void ColorChooserMac::SetSelectedColor(SkColor color) {
// the ColorPanelCocoa is still the target.
BOOL respondsToPrivateTargetMethod =
[panel respondsToSelector:@selector(__target)];
-
- if ([panel delegate] == self ||
- (respondsToPrivateTargetMethod && [panel __target] == self)) {
- [panel setDelegate:nil];
+ if (respondsToPrivateTargetMethod && [panel __target] == self) {
[panel setTarget:nil];
[panel setAction:nullptr];
}
+ [[NSNotificationCenter defaultCenter]
+ removeObserver:self
+ name:NSWindowWillCloseNotification
+ object:panel];
+
[super dealloc];
}
- (void)windowWillClose:(NSNotification*)notification {
- chooser_->DidCloseColorPabel();
+ chooser_->DidCloseColorPanel();
nonUserChange_ = NO;
}
diff --git a/chrome/browser/ui/cocoa/color_panel_cocoa_unittest.mm b/chrome/browser/ui/cocoa/color_panel_cocoa_unittest.mm
index 83185ceb9bbd29bf38fce7f72c23f3a5b15ba6c8..823365fdfc0bceceeed6f5edc00b3462715a4751 100644
--- a/chrome/browser/ui/cocoa/color_panel_cocoa_unittest.mm
+++ b/chrome/browser/ui/cocoa/color_panel_cocoa_unittest.mm
@@ -28,28 +28,6 @@ class ColorPanelCocoaTest : public CocoaTest {
}
};
-TEST_F(ColorPanelCocoaTest, ClearTargetAndDelegateOnEnd) {
- NSColorPanel* nscolor_panel = [NSColorPanel sharedColorPanel];
- @autoreleasepool {
- EXPECT_TRUE([nscolor_panel respondsToSelector:@selector(__target)]);
-
- // Create a ColorPanelCocoa.
- ColorChooserMac* color_chooser_mac =
- ColorChooserMac::Open(nullptr, SK_ColorBLACK);
-
- // Confirm the NSColorPanel's configuration by the ColorChooserMac's
- // ColorPanelCocoa.
- EXPECT_TRUE([nscolor_panel delegate]);
- EXPECT_TRUE([nscolor_panel __target]);
-
- // Release the ColorPanelCocoa and confirm it's no longer the NSColorPanel's
- // target or delegate.
- color_chooser_mac->End();
- }
- EXPECT_EQ([nscolor_panel delegate], nil);
- EXPECT_EQ([nscolor_panel __target], nil);
-}
-
TEST_F(ColorPanelCocoaTest, ClearTargetOnEnd) {
NSColorPanel* nscolor_panel = [NSColorPanel sharedColorPanel];
@autoreleasepool {
@@ -61,19 +39,12 @@ TEST_F(ColorPanelCocoaTest, ClearTargetOnEnd) {
// Confirm the NSColorPanel's configuration by the ColorChooserMac's
// ColorPanelCocoa.
- EXPECT_TRUE([nscolor_panel delegate]);
EXPECT_TRUE([nscolor_panel __target]);
- // Clear the delegate and release the ColorPanelCocoa.
- [nscolor_panel setDelegate:nil];
-
// Release the ColorPanelCocoa.
color_chooser_mac->End();
}
- // Confirm the ColorPanelCocoa is no longer the NSColorPanel's target or
- // delegate. Previously the ColorPanelCocoa would not clear the target if
- // the delegate had already been cleared.
- EXPECT_EQ([nscolor_panel delegate], nil);
+ // Confirm the ColorPanelCocoa is no longer the NSColorPanel's target
EXPECT_EQ([nscolor_panel __target], nil);
}

View file

@ -1,92 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Benedek Heilig <benecene@gmail.com>
Date: Thu, 21 Feb 2019 17:16:33 +0000
Subject: fix some DCHECKs on Windows when using color chooser dialog
Backports an upstream fix I made to the color chooser dialog on
Windows. This can be removed once that fix lands in a chromium version we
use. Below is the original commit message:
Fix DCHECKs being triggered while using color chooser dialog on Windows
This fixes two DHCECKs being triggered on Windows when using the
dialog in a debug build. The main source of these triggered DCHECKs was
that when the user closes the dialog, OnColorChooserDialog is called,
which calls WebContentsImpl::DidEndColorChooser, which calls End on the
dialog, which calls OnColorChooserDialog again. This also happened on
macos. The other DCHECK was the receiver->HasAtLeastOneRef() one,
because ColorChooserDialog had a PostTask in it's constructor.
Change-Id: I45ec32083a5850e006034073bc29d7ec4bb63189
diff --git a/chrome/browser/ui/views/color_chooser_dialog.cc b/chrome/browser/ui/views/color_chooser_dialog.cc
index c26be855120fcef78ce995d09fb3965f796746a9..1f568a2657250c5f21ab01da88950eedc6d4e177 100644
--- a/chrome/browser/ui/views/color_chooser_dialog.cc
+++ b/chrome/browser/ui/views/color_chooser_dialog.cc
@@ -24,12 +24,14 @@ using content::BrowserThread;
// static
COLORREF ColorChooserDialog::g_custom_colors[16];
-ColorChooserDialog::ColorChooserDialog(views::ColorChooserListener* listener,
- SkColor initial_color,
- gfx::NativeWindow owning_window)
+ColorChooserDialog::ColorChooserDialog(views::ColorChooserListener* listener)
: listener_(listener) {
DCHECK(listener_);
CopyCustomColors(g_custom_colors, custom_colors_);
+}
+
+void ColorChooserDialog::Open(SkColor initial_color,
+ gfx::NativeWindow owning_window) {
HWND owning_hwnd = views::HWNDForNativeWindow(owning_window);
std::unique_ptr<RunState> run_state = BeginRun(owning_hwnd);
diff --git a/chrome/browser/ui/views/color_chooser_dialog.h b/chrome/browser/ui/views/color_chooser_dialog.h
index 838e22dcd1a707714a098320d5bf8174fa60a2ea..b2558ce2a226ccde0f20de9712bf33051b21799c 100644
--- a/chrome/browser/ui/views/color_chooser_dialog.h
+++ b/chrome/browser/ui/views/color_chooser_dialog.h
@@ -23,9 +23,9 @@ class ColorChooserDialog
public ui::BaseShellDialog,
public ui::BaseShellDialogImpl {
public:
- ColorChooserDialog(views::ColorChooserListener* listener,
- SkColor initial_color,
- gfx::NativeWindow owning_window);
+ explicit ColorChooserDialog(views::ColorChooserListener* listener);
+
+ void Open(SkColor initial_color, gfx::NativeWindow owning_window);
// BaseShellDialog:
bool IsRunning(gfx::NativeWindow owning_window) const override;
diff --git a/chrome/browser/ui/views/color_chooser_win.cc b/chrome/browser/ui/views/color_chooser_win.cc
index 434842ba0f81206a43fb26874930bf7309782890..ffc58eec78dc36e21c2c04aa0b0cd9097541d2f0 100644
--- a/chrome/browser/ui/views/color_chooser_win.cc
+++ b/chrome/browser/ui/views/color_chooser_win.cc
@@ -61,9 +61,8 @@ ColorChooserWin::ColorChooserWin(content::WebContents* web_contents,
->GetWidget()
->GetView()
->GetNativeView());
- color_chooser_dialog_ = new ColorChooserDialog(this,
- initial_color,
- owning_window);
+ color_chooser_dialog_ = new ColorChooserDialog(this);
+ color_chooser_dialog_->Open(initial_color, owning_window);
}
ColorChooserWin::~ColorChooserWin() {
@@ -90,11 +89,11 @@ void ColorChooserWin::OnColorChooserDialogClosed() {
if (color_chooser_dialog_.get()) {
color_chooser_dialog_->ListenerDestroyed();
color_chooser_dialog_ = NULL;
+ DCHECK(current_color_chooser_ == this);
+ current_color_chooser_ = NULL;
+ if (web_contents_)
+ web_contents_->DidEndColorChooser();
}
- DCHECK(current_color_chooser_ == this);
- current_color_chooser_ = NULL;
- if (web_contents_)
- web_contents_->DidEndColorChooser();
}
namespace chrome {

View file

@ -18,7 +18,7 @@ diff --git a/chrome/browser/extensions/global_shortcut_listener_mac.mm b/chrome/
index befe726af9c10b1563a7fc0bb77cc55f65943d5c..46c6fe08bab8471007f78d3ef227e5195bfdf0e1 100644 index befe726af9c10b1563a7fc0bb77cc55f65943d5c..46c6fe08bab8471007f78d3ef227e5195bfdf0e1 100644
--- a/chrome/browser/extensions/global_shortcut_listener_mac.mm --- a/chrome/browser/extensions/global_shortcut_listener_mac.mm
+++ b/chrome/browser/extensions/global_shortcut_listener_mac.mm +++ b/chrome/browser/extensions/global_shortcut_listener_mac.mm
@@ -21,6 +21,26 @@ using extensions::GlobalShortcutListenerMac; @@ -21,6 +21,26 @@
namespace extensions { namespace extensions {
@ -80,10 +80,10 @@ index 392cf3d58c64c088596e8d321a2ce37b0ec60b6e..43e30f47240dc10a3a9b950255d4e487
ui::Accelerator accelerator( ui::Accelerator accelerator(
ui::KeyboardCodeFromXKeyEvent(x_event), modifiers); ui::KeyboardCodeFromXKeyEvent(x_event), modifiers);
diff --git a/ui/base/accelerators/media_keys_listener_mac.mm b/ui/base/accelerators/media_keys_listener_mac.mm diff --git a/ui/base/accelerators/media_keys_listener_mac.mm b/ui/base/accelerators/media_keys_listener_mac.mm
index b48fa8e63867021bdd77bf585a0e02c366980d91..bae9e24e7bcf7615be243bcb5629cc5981a31b06 100644 index fe6aa25cc8cc372ef450e5d6658a52a2b87eabcb..e960d601062b644c0b25b657e128e06584c45b54 100644
--- a/ui/base/accelerators/media_keys_listener_mac.mm --- a/ui/base/accelerators/media_keys_listener_mac.mm
+++ b/ui/base/accelerators/media_keys_listener_mac.mm +++ b/ui/base/accelerators/media_keys_listener_mac.mm
@@ -31,6 +31,12 @@ KeyboardCode MediaKeyCodeToKeyboardCode(int key_code) { @@ -32,6 +32,12 @@ KeyboardCode MediaKeyCodeToKeyboardCode(int key_code) {
case NX_KEYTYPE_NEXT: case NX_KEYTYPE_NEXT:
case NX_KEYTYPE_FAST: case NX_KEYTYPE_FAST:
return VKEY_MEDIA_NEXT_TRACK; return VKEY_MEDIA_NEXT_TRACK;
@ -96,7 +96,7 @@ index b48fa8e63867021bdd77bf585a0e02c366980d91..bae9e24e7bcf7615be243bcb5629cc59
} }
return VKEY_UNKNOWN; return VKEY_UNKNOWN;
} }
@@ -190,7 +196,10 @@ CGEventRef MediaKeysListenerImpl::EventTapCallback(CGEventTapProxy proxy, @@ -191,7 +197,10 @@ static CGEventRef EventTapCallback(CGEventTapProxy proxy,
int key_code = (data1 & 0xFFFF0000) >> 16; int key_code = (data1 & 0xFFFF0000) >> 16;
if (key_code != NX_KEYTYPE_PLAY && key_code != NX_KEYTYPE_NEXT && if (key_code != NX_KEYTYPE_PLAY && key_code != NX_KEYTYPE_NEXT &&
key_code != NX_KEYTYPE_PREVIOUS && key_code != NX_KEYTYPE_FAST && key_code != NX_KEYTYPE_PREVIOUS && key_code != NX_KEYTYPE_FAST &&

View file

@ -5,39 +5,40 @@ Subject: compositor_delegate.patch
diff --git a/content/browser/compositor/gpu_process_transport_factory.cc b/content/browser/compositor/gpu_process_transport_factory.cc diff --git a/content/browser/compositor/gpu_process_transport_factory.cc b/content/browser/compositor/gpu_process_transport_factory.cc
index 5aeda7bd9caf6b5b9e2a95293e4409dc7f9a6d2d..d15e1462babe97b5d68014f4d67236653046aa5f 100644 index bc1934e2c7b40595b0c06d9beace5f4a569e7751..a354265c235bc8c81f3e5ab5b703bf6c7af06187 100644
--- a/content/browser/compositor/gpu_process_transport_factory.cc --- a/content/browser/compositor/gpu_process_transport_factory.cc
+++ b/content/browser/compositor/gpu_process_transport_factory.cc +++ b/content/browser/compositor/gpu_process_transport_factory.cc
@@ -485,10 +485,20 @@ void GpuProcessTransportFactory::EstablishedGpuChannel( @@ -451,11 +451,20 @@ void GpuProcessTransportFactory::EstablishedGpuChannel(
// surfaces as they are not following the correct mode. // surfaces as they are not following the correct mode.
DisableGpuCompositing(compositor.get()); DisableGpuCompositing(compositor.get());
} }
+ +
+ std::unique_ptr<viz::SoftwareOutputDevice> output_device; + std::unique_ptr<viz::SoftwareOutputDevice> output_device;
+ if (compositor->delegate()) { + if (compositor->delegate()) {
+ output_device = compositor->delegate()->CreateSoftwareOutputDevice( + output_device =
+ compositor.get()); + compositor->delegate()->CreateSoftwareOutputDevice(compositor.get());
+ } + }
+ if (!output_device) { + if (!output_device) {
+ output_device = CreateSoftwareOutputDevice(compositor->widget(), + output_device = CreateSoftwareOutputDevice(compositor->widget(),
+ compositor->task_runner()); + compositor->task_runner());
+ } + }
+ +
display_output_surface = display_output_surface =
std::make_unique<SoftwareBrowserCompositorOutputSurface>( std::make_unique<SoftwareBrowserCompositorOutputSurface>(
- CreateSoftwareOutputDevice(compositor->widget(), - CreateSoftwareOutputDevice(compositor->widget(),
- compositor->task_runner()), - compositor->task_runner()),
+ std::move(output_device), - std::move(vsync_callback));
std::move(vsync_callback)); + std::move(output_device), std::move(vsync_callback));
} else { } else {
DCHECK(context_provider); DCHECK(context_provider);
const auto& capabilities = context_provider->ContextCapabilities();
diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h
index 313431f82ee7e181dad2c48dd27950129afbb223..b8c2632e49b7b96adbb06a03678961823f0790f6 100644 index 29784c677f4be6e4fd7cfb298ab3554d22e1beaa..07b61abe7ce666b5eb6448ef795f838ddb805947 100644
--- a/ui/compositor/compositor.h --- a/ui/compositor/compositor.h
+++ b/ui/compositor/compositor.h +++ b/ui/compositor/compositor.h
@@ -25,6 +25,7 @@ @@ -25,6 +25,7 @@
#include "components/viz/common/surfaces/frame_sink_id.h" #include "components/viz/common/surfaces/frame_sink_id.h"
#include "components/viz/common/surfaces/local_surface_id.h" #include "components/viz/common/surfaces/local_surface_id_allocation.h"
#include "components/viz/host/host_frame_sink_client.h" #include "components/viz/host/host_frame_sink_client.h"
+#include "components/viz/service/display/software_output_device.h" +#include "components/viz/service/display/software_output_device.h"
#include "third_party/skia/include/core/SkColor.h" #include "third_party/skia/include/core/SkColor.h"
@ -59,7 +60,7 @@ index 313431f82ee7e181dad2c48dd27950129afbb223..b8c2632e49b7b96adbb06a0367896182
// Compositor object to take care of GPU painting. // Compositor object to take care of GPU painting.
// A Browser compositor object is responsible for generating the final // A Browser compositor object is responsible for generating the final
// displayable form of pixels comprising a single widget's contents. It draws an // displayable form of pixels comprising a single widget's contents. It draws an
@@ -232,6 +242,9 @@ class COMPOSITOR_EXPORT Compositor : public cc::LayerTreeHostClient, @@ -235,6 +245,9 @@ class COMPOSITOR_EXPORT Compositor : public cc::LayerTreeHostClient,
// Schedules a redraw of the layer tree associated with this compositor. // Schedules a redraw of the layer tree associated with this compositor.
void ScheduleDraw(); void ScheduleDraw();
@ -69,7 +70,7 @@ index 313431f82ee7e181dad2c48dd27950129afbb223..b8c2632e49b7b96adbb06a0367896182
// Sets the root of the layer tree drawn by this Compositor. The root layer // Sets the root of the layer tree drawn by this Compositor. The root layer
// must have no parent. The compositor's root layer is reset if the root layer // must have no parent. The compositor's root layer is reset if the root layer
// is destroyed. NULL can be passed to reset the root layer, in which case the // is destroyed. NULL can be passed to reset the root layer, in which case the
@@ -442,6 +455,8 @@ class COMPOSITOR_EXPORT Compositor : public cc::LayerTreeHostClient, @@ -458,6 +471,8 @@ class COMPOSITOR_EXPORT Compositor : public cc::LayerTreeHostClient,
ui::ContextFactory* context_factory_; ui::ContextFactory* context_factory_;
ui::ContextFactoryPrivate* context_factory_private_; ui::ContextFactoryPrivate* context_factory_private_;

View file

@ -12,10 +12,10 @@ Without this patch, calling `registerStandardSchemes` during initialization
when in debug mode will cause a DCHECK to fire. when in debug mode will cause a DCHECK to fire.
diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc
index a62f2ecf52bb95261750c9236bd2ba1f53d737f4..38b25c5befd88659b2769d69ef1323de60b34ec7 100644 index f006f0992df5b8192849799c2d3d546779d87a08..a63b9d5a95960cca15cde5e392cbe06a0325f517 100644
--- a/content/app/content_main_runner_impl.cc --- a/content/app/content_main_runner_impl.cc
+++ b/content/app/content_main_runner_impl.cc +++ b/content/app/content_main_runner_impl.cc
@@ -749,7 +749,7 @@ int ContentMainRunnerImpl::Initialize(const ContentMainParams& params) { @@ -757,7 +757,7 @@ int ContentMainRunnerImpl::Initialize(const ContentMainParams& params) {
#endif #endif
RegisterPathProvider(); RegisterPathProvider();

View file

@ -8,10 +8,10 @@ run before shutdown. This is required to cleanup WebContents asynchronously
in atom::CommonWebContentsDelegate::ResetManageWebContents. in atom::CommonWebContentsDelegate::ResetManageWebContents.
diff --git a/content/browser/browser_main_loop.cc b/content/browser/browser_main_loop.cc diff --git a/content/browser/browser_main_loop.cc b/content/browser/browser_main_loop.cc
index 5fd14e79ead2a4f00cf3d9bfdb140d066862003d..782cae9f61524732ef93b75ba810ac1555020536 100644 index 368011e73ad29bbfdbd2a6d4828ce7635e1929ca..8da6c457e639b3fd0cd5352735cdc7299f682455 100644
--- a/content/browser/browser_main_loop.cc --- a/content/browser/browser_main_loop.cc
+++ b/content/browser/browser_main_loop.cc +++ b/content/browser/browser_main_loop.cc
@@ -1548,7 +1548,7 @@ void BrowserMainLoop::MainMessageLoopRun() { @@ -1544,7 +1544,7 @@ void BrowserMainLoop::MainMessageLoopRun() {
} }
base::RunLoop run_loop; base::RunLoop run_loop;

View file

@ -8,7 +8,7 @@ this patch can be removed once we switch to network service,
where the embedders have a chance to design their URLLoaders. where the embedders have a chance to design their URLLoaders.
diff --git a/content/browser/loader/cross_site_document_resource_handler.cc b/content/browser/loader/cross_site_document_resource_handler.cc diff --git a/content/browser/loader/cross_site_document_resource_handler.cc b/content/browser/loader/cross_site_document_resource_handler.cc
index bd62ed07876ad4a2a7c6e8309843281719dbefb6..13e67994997caf175ba1b30ba8070718a697588d 100644 index f86a9167ac1ec5e7b082e474eb4b5f217d06df92..47df32ecb078a8f18e474f5c38faf2c7bdab30a1 100644
--- a/content/browser/loader/cross_site_document_resource_handler.cc --- a/content/browser/loader/cross_site_document_resource_handler.cc
+++ b/content/browser/loader/cross_site_document_resource_handler.cc +++ b/content/browser/loader/cross_site_document_resource_handler.cc
@@ -673,6 +673,9 @@ bool CrossSiteDocumentResourceHandler::ShouldBlockBasedOnHeaders( @@ -673,6 +673,9 @@ bool CrossSiteDocumentResourceHandler::ShouldBlockBasedOnHeaders(
@ -22,10 +22,10 @@ index bd62ed07876ad4a2a7c6e8309843281719dbefb6..13e67994997caf175ba1b30ba8070718
} }
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
index e474d899fbcebfbaf4cb2ec0b63cc963292ee39a..8446076e169efb64569fb2e463cb5ebf5e1e6ee9 100644 index 8a4f94786e75c7abecd1a53fd6f0c2c0421534db..204637b78b36b3fb0d21804295b4de73a295de5d 100644
--- a/content/public/browser/content_browser_client.cc --- a/content/public/browser/content_browser_client.cc
+++ b/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc
@@ -58,6 +58,10 @@ ContentBrowserClient::SiteInstanceForNavigationType ContentBrowserClient::Should @@ -61,6 +61,10 @@ ContentBrowserClient::SiteInstanceForNavigationType ContentBrowserClient::Should
return SiteInstanceForNavigationType::ASK_CHROMIUM; return SiteInstanceForNavigationType::ASK_CHROMIUM;
} }
@ -37,12 +37,12 @@ index e474d899fbcebfbaf4cb2ec0b63cc963292ee39a..8446076e169efb64569fb2e463cb5ebf
const MainFunctionParams& parameters) { const MainFunctionParams& parameters) {
return nullptr; return nullptr;
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
index 2cc843982a697dbd693ca1d5fda3a8ab68c96f73..3ebe17d34cdcfb02acacd3c32f5dbb87594c010f 100644 index bbc4263798a4cf13c0a6f3d7d62f01eb1dfe4784..1551bbad5e1a30fe6e83f85d9f66a4b18bc1bca1 100644
--- a/content/public/browser/content_browser_client.h --- a/content/public/browser/content_browser_client.h
+++ b/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h
@@ -237,6 +237,9 @@ class CONTENT_EXPORT ContentBrowserClient { @@ -241,6 +241,9 @@ class CONTENT_EXPORT ContentBrowserClient {
content::RenderFrameHost* rfh, content::RenderFrameHost* rfh,
content::SiteInstance* pending_site_instance){}; content::SiteInstance* pending_site_instance) {}
+ // Electron: Allows bypassing CORB checks for a renderer process. + // Electron: Allows bypassing CORB checks for a renderer process.
+ virtual bool ShouldBypassCORB(int render_process_id) const; + virtual bool ShouldBypassCORB(int render_process_id) const;

View file

@ -17,10 +17,10 @@ only one or two specific checks fail. Then it's better to simply comment out the
failing checks and allow the rest of the target to have them enabled. failing checks and allow the rest of the target to have them enabled.
diff --git a/content/browser/frame_host/navigation_controller_impl.cc b/content/browser/frame_host/navigation_controller_impl.cc diff --git a/content/browser/frame_host/navigation_controller_impl.cc b/content/browser/frame_host/navigation_controller_impl.cc
index a28b7c8a3947371a9a17b3094f0b33fd3c03aba9..63929875aef3525e20ade2dcb5dcb1d70082f33b 100644 index 71a0a5ffb4ba7a371d418a52b2eb605140aefbe6..f15f121244890bd9d024e3c9aa83dc1ca796088d 100644
--- a/content/browser/frame_host/navigation_controller_impl.cc --- a/content/browser/frame_host/navigation_controller_impl.cc
+++ b/content/browser/frame_host/navigation_controller_impl.cc +++ b/content/browser/frame_host/navigation_controller_impl.cc
@@ -1170,8 +1170,10 @@ NavigationType NavigationControllerImpl::ClassifyNavigation( @@ -1184,8 +1184,10 @@ NavigationType NavigationControllerImpl::ClassifyNavigation(
return NAVIGATION_TYPE_NEW_SUBFRAME; return NAVIGATION_TYPE_NEW_SUBFRAME;
} }
@ -33,7 +33,7 @@ index a28b7c8a3947371a9a17b3094f0b33fd3c03aba9..63929875aef3525e20ade2dcb5dcb1d7
if (rfh->GetParent()) { if (rfh->GetParent()) {
// All manual subframes would be did_create_new_entry and handled above, so // All manual subframes would be did_create_new_entry and handled above, so
@@ -1412,7 +1414,10 @@ void NavigationControllerImpl::RendererDidNavigateToNewPage( @@ -1428,7 +1430,10 @@ void NavigationControllerImpl::RendererDidNavigateToNewPage(
new_entry->GetFavicon() = GetLastCommittedEntry()->GetFavicon(); new_entry->GetFavicon() = GetLastCommittedEntry()->GetFavicon();
} }
@ -46,10 +46,10 @@ index a28b7c8a3947371a9a17b3094f0b33fd3c03aba9..63929875aef3525e20ade2dcb5dcb1d7
// navigation. Now we know that the renderer has updated its state accordingly // navigation. Now we know that the renderer has updated its state accordingly
// and it is safe to also clear the browser side history. // and it is safe to also clear the browser side history.
diff --git a/ui/base/clipboard/clipboard_win.cc b/ui/base/clipboard/clipboard_win.cc diff --git a/ui/base/clipboard/clipboard_win.cc b/ui/base/clipboard/clipboard_win.cc
index 49654c95675e0240d82232eb971f85ab3611ab29..8f0737841f70144770dc4dfd7353f7bdba3ffcfd 100644 index 17dee835d3d473a37e18c5a111426a3899a6ced2..ae01e88dbfbbfe34bb76e4234c17e95d06737663 100644
--- a/ui/base/clipboard/clipboard_win.cc --- a/ui/base/clipboard/clipboard_win.cc
+++ b/ui/base/clipboard/clipboard_win.cc +++ b/ui/base/clipboard/clipboard_win.cc
@@ -726,9 +726,9 @@ void ClipboardWin::WriteBitmapFromHandle(HBITMAP source_hbitmap, @@ -729,9 +729,9 @@ void ClipboardWin::WriteBitmapFromHandle(HBITMAP source_hbitmap,
} }
void ClipboardWin::WriteToClipboard(unsigned int format, HANDLE handle) { void ClipboardWin::WriteToClipboard(unsigned int format, HANDLE handle) {

View file

@ -36,10 +36,10 @@ index 8e02a8a95eb07516162eacdf5b361231d3a02975..3497b85428a52c6019cfb5d30229071f
virtual content::DesktopMediaID::Type GetMediaListType() const = 0; virtual content::DesktopMediaID::Type GetMediaListType() const = 0;
}; };
diff --git a/chrome/browser/media/webrtc/desktop_media_list_base.cc b/chrome/browser/media/webrtc/desktop_media_list_base.cc diff --git a/chrome/browser/media/webrtc/desktop_media_list_base.cc b/chrome/browser/media/webrtc/desktop_media_list_base.cc
index 727d1f564dc943026a4b10ab2584f9269bb2ae4a..66789680d51e74e533bfb9c6c99e5b9e0844b1d9 100644 index a68d5d774489fe95968046001b8540d74f36dc97..ca1077801ae18862618964a9675a4101b9c3a393 100644
--- a/chrome/browser/media/webrtc/desktop_media_list_base.cc --- a/chrome/browser/media/webrtc/desktop_media_list_base.cc
+++ b/chrome/browser/media/webrtc/desktop_media_list_base.cc +++ b/chrome/browser/media/webrtc/desktop_media_list_base.cc
@@ -20,6 +20,11 @@ DesktopMediaListBase::DesktopMediaListBase(base::TimeDelta update_period) @@ -21,6 +21,11 @@ DesktopMediaListBase::DesktopMediaListBase(base::TimeDelta update_period)
DesktopMediaListBase::~DesktopMediaListBase() {} DesktopMediaListBase::~DesktopMediaListBase() {}
@ -51,7 +51,7 @@ index 727d1f564dc943026a4b10ab2584f9269bb2ae4a..66789680d51e74e533bfb9c6c99e5b9e
void DesktopMediaListBase::SetUpdatePeriod(base::TimeDelta period) { void DesktopMediaListBase::SetUpdatePeriod(base::TimeDelta period) {
DCHECK(!observer_); DCHECK(!observer_);
update_period_ = period; update_period_ = period;
@@ -33,10 +38,7 @@ void DesktopMediaListBase::SetViewDialogWindowId(DesktopMediaID dialog_id) { @@ -34,10 +39,7 @@ void DesktopMediaListBase::SetViewDialogWindowId(DesktopMediaID dialog_id) {
view_dialog_id_ = dialog_id; view_dialog_id_ = dialog_id;
} }
@ -63,7 +63,7 @@ index 727d1f564dc943026a4b10ab2584f9269bb2ae4a..66789680d51e74e533bfb9c6c99e5b9e
Refresh(); Refresh();
} }
@@ -51,6 +53,11 @@ const DesktopMediaList::Source& DesktopMediaListBase::GetSource( @@ -52,6 +54,11 @@ const DesktopMediaList::Source& DesktopMediaListBase::GetSource(
return sources_[index]; return sources_[index];
} }
@ -75,7 +75,7 @@ index 727d1f564dc943026a4b10ab2584f9269bb2ae4a..66789680d51e74e533bfb9c6c99e5b9e
DesktopMediaID::Type DesktopMediaListBase::GetMediaListType() const { DesktopMediaID::Type DesktopMediaListBase::GetMediaListType() const {
return type_; return type_;
} }
@@ -62,6 +69,12 @@ DesktopMediaListBase::SourceDescription::SourceDescription( @@ -63,6 +70,12 @@ DesktopMediaListBase::SourceDescription::SourceDescription(
void DesktopMediaListBase::UpdateSourcesList( void DesktopMediaListBase::UpdateSourcesList(
const std::vector<SourceDescription>& new_sources) { const std::vector<SourceDescription>& new_sources) {
@ -88,7 +88,7 @@ index 727d1f564dc943026a4b10ab2584f9269bb2ae4a..66789680d51e74e533bfb9c6c99e5b9e
typedef std::set<DesktopMediaID> SourceSet; typedef std::set<DesktopMediaID> SourceSet;
SourceSet new_source_set; SourceSet new_source_set;
for (size_t i = 0; i < new_sources.size(); ++i) { for (size_t i = 0; i < new_sources.size(); ++i) {
@@ -134,6 +147,8 @@ void DesktopMediaListBase::UpdateSourceThumbnail(DesktopMediaID id, @@ -135,6 +148,8 @@ void DesktopMediaListBase::UpdateSourceThumbnail(DesktopMediaID id,
} }
void DesktopMediaListBase::ScheduleNextRefresh() { void DesktopMediaListBase::ScheduleNextRefresh() {
@ -133,11 +133,11 @@ index 47401abc984e6fe26c7f4c5399aa565c687060b0..ca6a527ffac877c27aac94337ec5a7b5
protected: protected:
virtual ~DesktopMediaListObserver() {} virtual ~DesktopMediaListObserver() {}
diff --git a/chrome/browser/media/webrtc/native_desktop_media_list.cc b/chrome/browser/media/webrtc/native_desktop_media_list.cc diff --git a/chrome/browser/media/webrtc/native_desktop_media_list.cc b/chrome/browser/media/webrtc/native_desktop_media_list.cc
index 7288cface09dee8b42eeb20e03c96cb825740e1b..440377eda5bb5bafea5cddaa40203fd8834f410a 100644 index 2338d6daa5c5808aea07ce6883478266a599a9d0..d8adaeecfb6eac0d87cce2cc5e7ac78ab15fee67 100644
--- a/chrome/browser/media/webrtc/native_desktop_media_list.cc --- a/chrome/browser/media/webrtc/native_desktop_media_list.cc
+++ b/chrome/browser/media/webrtc/native_desktop_media_list.cc +++ b/chrome/browser/media/webrtc/native_desktop_media_list.cc
@@ -6,14 +6,15 @@ @@ -7,14 +7,15 @@
#include "base/bind.h"
#include "base/hash.h" #include "base/hash.h"
#include "base/single_thread_task_runner.h" #include "base/single_thread_task_runner.h"
+#include "base/strings/string_number_conversions.h" +#include "base/strings/string_number_conversions.h"

View file

@ -15,10 +15,10 @@ the redraw locking mechanism, which fixes these issues. The electron issue
can be found at https://github.com/electron/electron/issues/1821 can be found at https://github.com/electron/electron/issues/1821
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index f3523d2a05c3f93215c6a78e81e015c4b965b758..39ff4f17822b4552218cb3a11c478eb22f0ada17 100644 index 3703f163d2370292912d969395eccf372284db73..bedfaf0ebfefc5dcca530b8aaab4a829017f3fb9 100644
--- a/ui/views/win/hwnd_message_handler.cc --- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc +++ b/ui/views/win/hwnd_message_handler.cc
@@ -288,6 +288,10 @@ const int kSynthesizedMouseMessagesTimeDifference = 500; @@ -290,6 +290,10 @@ const int kSynthesizedMouseMessagesTimeDifference = 500;
} // namespace } // namespace
@ -29,7 +29,7 @@ index f3523d2a05c3f93215c6a78e81e015c4b965b758..39ff4f17822b4552218cb3a11c478eb2
// A scoping class that prevents a window from being able to redraw in response // A scoping class that prevents a window from being able to redraw in response
// to invalidations that may occur within it for the lifetime of the object. // to invalidations that may occur within it for the lifetime of the object.
// //
@@ -339,6 +343,7 @@ class HWNDMessageHandler::ScopedRedrawLock { @@ -341,6 +345,7 @@ class HWNDMessageHandler::ScopedRedrawLock {
cancel_unlock_(false), cancel_unlock_(false),
should_lock_(owner_->IsVisible() && !owner->HasChildRenderingWindow() && should_lock_(owner_->IsVisible() && !owner->HasChildRenderingWindow() &&
::IsWindow(hwnd_) && ::IsWindow(hwnd_) &&
@ -37,7 +37,7 @@ index f3523d2a05c3f93215c6a78e81e015c4b965b758..39ff4f17822b4552218cb3a11c478eb2
(!(GetWindowLong(hwnd_, GWL_STYLE) & WS_CAPTION) || (!(GetWindowLong(hwnd_, GWL_STYLE) & WS_CAPTION) ||
!ui::win::IsAeroGlassEnabled())) { !ui::win::IsAeroGlassEnabled())) {
if (should_lock_) if (should_lock_)
@@ -940,6 +945,10 @@ bool HWNDMessageHandler::HasChildRenderingWindow() { @@ -942,6 +947,10 @@ bool HWNDMessageHandler::HasChildRenderingWindow() {
hwnd()); hwnd());
} }
@ -49,10 +49,10 @@ index f3523d2a05c3f93215c6a78e81e015c4b965b758..39ff4f17822b4552218cb3a11c478eb2
// HWNDMessageHandler, gfx::WindowImpl overrides: // HWNDMessageHandler, gfx::WindowImpl overrides:
diff --git a/ui/views/win/hwnd_message_handler.h b/ui/views/win/hwnd_message_handler.h diff --git a/ui/views/win/hwnd_message_handler.h b/ui/views/win/hwnd_message_handler.h
index 10c2fcd1742974d373f68d3fa13f2a0bb8ce2c76..533f80fd1a8f97e6153c610d6fab2f594590ffe3 100644 index 925996e356994bf27939565beb9663c4416de1bc..8c2b5fc09da64a4766c1918eee34d4cfe651958d 100644
--- a/ui/views/win/hwnd_message_handler.h --- a/ui/views/win/hwnd_message_handler.h
+++ b/ui/views/win/hwnd_message_handler.h +++ b/ui/views/win/hwnd_message_handler.h
@@ -182,6 +182,8 @@ class VIEWS_EXPORT HWNDMessageHandler : public gfx::WindowImpl, @@ -183,6 +183,8 @@ class VIEWS_EXPORT HWNDMessageHandler : public gfx::WindowImpl,
typedef std::set<DWORD> TouchIDs; typedef std::set<DWORD> TouchIDs;
enum class DwmFrameState { OFF, ON }; enum class DwmFrameState { OFF, ON };

View file

@ -19,10 +19,10 @@ to deal with color spaces. That is being tracked at
https://crbug.com/634542 and https://crbug.com/711107. https://crbug.com/634542 and https://crbug.com/711107.
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
index 2782b23d66cdf79e7fdbbd3111b7434ef20a90d3..6543722350b89c94974ab0b97a937cd5fa29fde4 100644 index 483243c65c8f671cb6056811a51dae2e7d9b2551..75d421719b5f0d14ea7f15be163884a4b1d1ee65 100644
--- a/cc/trees/layer_tree_host_impl.cc --- a/cc/trees/layer_tree_host_impl.cc
+++ b/cc/trees/layer_tree_host_impl.cc +++ b/cc/trees/layer_tree_host_impl.cc
@@ -1569,6 +1569,10 @@ void LayerTreeHostImpl::SetIsLikelyToRequireADraw( @@ -1574,6 +1574,10 @@ void LayerTreeHostImpl::SetIsLikelyToRequireADraw(
} }
RasterColorSpace LayerTreeHostImpl::GetRasterColorSpace() const { RasterColorSpace LayerTreeHostImpl::GetRasterColorSpace() const {
@ -34,10 +34,10 @@ index 2782b23d66cdf79e7fdbbd3111b7434ef20a90d3..6543722350b89c94974ab0b97a937cd5
// The pending tree will have the most recently updated color space, so // The pending tree will have the most recently updated color space, so
// prefer that. // prefer that.
diff --git a/cc/trees/layer_tree_settings.h b/cc/trees/layer_tree_settings.h diff --git a/cc/trees/layer_tree_settings.h b/cc/trees/layer_tree_settings.h
index 9de6c5f5f45d7cb3e9141ffb480f6052090cc696..30f491ec4a2663d18bf22c27eff8dbbd7440e195 100644 index 04e48714a6f4fcf980f91d75e319667dc0ee18a4..0ec60a0bf9f903de67f69422f22b674bb3a49798 100644
--- a/cc/trees/layer_tree_settings.h --- a/cc/trees/layer_tree_settings.h
+++ b/cc/trees/layer_tree_settings.h +++ b/cc/trees/layer_tree_settings.h
@@ -98,6 +98,8 @@ class CC_EXPORT LayerTreeSettings { @@ -99,6 +99,8 @@ class CC_EXPORT LayerTreeSettings {
bool enable_mask_tiling = true; bool enable_mask_tiling = true;
@ -47,7 +47,7 @@ index 9de6c5f5f45d7cb3e9141ffb480f6052090cc696..30f491ec4a2663d18bf22c27eff8dbbd
// Image Decode Service and raster tiles without images until the decode is // Image Decode Service and raster tiles without images until the decode is
// ready. // ready.
diff --git a/components/viz/common/display/renderer_settings.h b/components/viz/common/display/renderer_settings.h diff --git a/components/viz/common/display/renderer_settings.h b/components/viz/common/display/renderer_settings.h
index 2b8cd275a5ee29b665f1a0fb27105cf75eab13ed..3493572110e2dda18c57fe079174f0934fb288b9 100644 index ce4fb4ca4f04c5668795c56ce536b4be292aa278..a6fec64c65f5916896e627473b0f8645a867a5ce 100644
--- a/components/viz/common/display/renderer_settings.h --- a/components/viz/common/display/renderer_settings.h
+++ b/components/viz/common/display/renderer_settings.h +++ b/components/viz/common/display/renderer_settings.h
@@ -20,6 +20,7 @@ class VIZ_COMMON_EXPORT RendererSettings { @@ -20,6 +20,7 @@ class VIZ_COMMON_EXPORT RendererSettings {
@ -59,7 +59,7 @@ index 2b8cd275a5ee29b665f1a0fb27105cf75eab13ed..3493572110e2dda18c57fe079174f093
bool force_antialiasing = false; bool force_antialiasing = false;
bool force_blending_with_shaders = false; bool force_blending_with_shaders = false;
diff --git a/components/viz/host/renderer_settings_creation.cc b/components/viz/host/renderer_settings_creation.cc diff --git a/components/viz/host/renderer_settings_creation.cc b/components/viz/host/renderer_settings_creation.cc
index e63d201943faf1b537df711299168d0378823bd0..fb5ca48f16b78a4d0a45cb57988d1d94cb4159bb 100644 index ee1f83f4d3db713f64c4175615be816198ea44a1..446df2e9b84565677ae63893391291877661a267 100644
--- a/components/viz/host/renderer_settings_creation.cc --- a/components/viz/host/renderer_settings_creation.cc
+++ b/components/viz/host/renderer_settings_creation.cc +++ b/components/viz/host/renderer_settings_creation.cc
@@ -11,6 +11,7 @@ @@ -11,6 +11,7 @@
@ -80,10 +80,10 @@ index e63d201943faf1b537df711299168d0378823bd0..fb5ca48f16b78a4d0a45cb57988d1d94
!command_line->HasSwitch(switches::kUIDisablePartialSwap); !command_line->HasSwitch(switches::kUIDisablePartialSwap);
#if defined(OS_WIN) #if defined(OS_WIN)
diff --git a/components/viz/service/display/gl_renderer.cc b/components/viz/service/display/gl_renderer.cc diff --git a/components/viz/service/display/gl_renderer.cc b/components/viz/service/display/gl_renderer.cc
index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654064300fc 100644 index 758b76453b4bc0728870013ecba6d2e770609b6b..62ac5d810c94adc8d29e5a6cf0854c40918a0386 100644
--- a/components/viz/service/display/gl_renderer.cc --- a/components/viz/service/display/gl_renderer.cc
+++ b/components/viz/service/display/gl_renderer.cc +++ b/components/viz/service/display/gl_renderer.cc
@@ -78,6 +78,9 @@ @@ -79,6 +79,9 @@
using gpu::gles2::GLES2Interface; using gpu::gles2::GLES2Interface;
@ -93,7 +93,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
namespace viz { namespace viz {
namespace { namespace {
@@ -523,8 +526,9 @@ void GLRenderer::DoDrawQuad(const DrawQuad* quad, @@ -529,8 +532,9 @@ void GLRenderer::DoDrawQuad(const DrawQuad* quad,
void GLRenderer::DrawDebugBorderQuad(const DebugBorderDrawQuad* quad) { void GLRenderer::DrawDebugBorderQuad(const DebugBorderDrawQuad* quad) {
SetBlendEnabled(quad->ShouldDrawWithBlending()); SetBlendEnabled(quad->ShouldDrawWithBlending());
@ -105,7 +105,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
// Use the full quad_rect for debug quads to not move the edges based on // Use the full quad_rect for debug quads to not move the edges based on
// partial swaps. // partial swaps.
@@ -1326,7 +1330,8 @@ void GLRenderer::ChooseRPDQProgram(DrawRenderPassDrawQuadParams* params, @@ -1331,7 +1335,8 @@ void GLRenderer::ChooseRPDQProgram(DrawRenderPassDrawQuadParams* params,
tex_coord_precision, sampler_type, shader_blend_mode, tex_coord_precision, sampler_type, shader_blend_mode,
params->use_aa ? USE_AA : NO_AA, mask_mode, mask_for_background, params->use_aa ? USE_AA : NO_AA, mask_mode, mask_for_background,
params->use_color_matrix, tint_gl_composited_content_), params->use_color_matrix, tint_gl_composited_content_),
@ -115,7 +115,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
} }
void GLRenderer::UpdateRPDQUniforms(DrawRenderPassDrawQuadParams* params) { void GLRenderer::UpdateRPDQUniforms(DrawRenderPassDrawQuadParams* params) {
@@ -1789,8 +1794,8 @@ void GLRenderer::DrawSolidColorQuad(const SolidColorDrawQuad* quad, @@ -1794,8 +1799,8 @@ void GLRenderer::DrawSolidColorQuad(const SolidColorDrawQuad* quad,
gfx::ColorSpace quad_color_space = gfx::ColorSpace::CreateSRGB(); gfx::ColorSpace quad_color_space = gfx::ColorSpace::CreateSRGB();
SetUseProgram(ProgramKey::SolidColor(use_aa ? USE_AA : NO_AA, SetUseProgram(ProgramKey::SolidColor(use_aa ? USE_AA : NO_AA,
tint_gl_composited_content_), tint_gl_composited_content_),
@ -126,7 +126,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
SetShaderColor(color, opacity); SetShaderColor(color, opacity);
if (current_program_->tint_color_matrix_location() != -1) { if (current_program_->tint_color_matrix_location() != -1) {
@@ -1940,8 +1945,8 @@ void GLRenderer::DrawContentQuadAA(const ContentDrawQuadBase* quad, @@ -1945,8 +1950,8 @@ void GLRenderer::DrawContentQuadAA(const ContentDrawQuadBase* quad,
quad->is_premultiplied ? PREMULTIPLIED_ALPHA quad->is_premultiplied ? PREMULTIPLIED_ALPHA
: NON_PREMULTIPLIED_ALPHA, : NON_PREMULTIPLIED_ALPHA,
false, false, tint_gl_composited_content_), false, false, tint_gl_composited_content_),
@ -137,7 +137,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
if (current_program_->tint_color_matrix_location() != -1) { if (current_program_->tint_color_matrix_location() != -1) {
auto matrix = cc::DebugColors::TintCompositedContentColorTransformMatrix(); auto matrix = cc::DebugColors::TintCompositedContentColorTransformMatrix();
@@ -2029,8 +2034,8 @@ void GLRenderer::DrawContentQuadNoAA(const ContentDrawQuadBase* quad, @@ -2037,8 +2042,8 @@ void GLRenderer::DrawContentQuadNoAA(const ContentDrawQuadBase* quad,
: NON_PREMULTIPLIED_ALPHA, : NON_PREMULTIPLIED_ALPHA,
!quad->ShouldDrawWithBlending(), has_tex_clamp_rect, !quad->ShouldDrawWithBlending(), has_tex_clamp_rect,
tint_gl_composited_content_), tint_gl_composited_content_),
@ -148,7 +148,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
if (current_program_->tint_color_matrix_location() != -1) { if (current_program_->tint_color_matrix_location() != -1) {
auto matrix = cc::DebugColors::TintCompositedContentColorTransformMatrix(); auto matrix = cc::DebugColors::TintCompositedContentColorTransformMatrix();
@@ -2125,7 +2130,7 @@ void GLRenderer::DrawYUVVideoQuad(const YUVVideoDrawQuad* quad, @@ -2136,7 +2141,7 @@ void GLRenderer::DrawYUVVideoQuad(const YUVVideoDrawQuad* quad,
DCHECK_NE(src_color_space, src_color_space.GetAsFullRangeRGB()); DCHECK_NE(src_color_space, src_color_space.GetAsFullRangeRGB());
gfx::ColorSpace dst_color_space = gfx::ColorSpace dst_color_space =
@ -157,7 +157,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
// Force sRGB output on Windows for overlay candidate video quads to match // Force sRGB output on Windows for overlay candidate video quads to match
// DirectComposition behavior in case these switch between overlays and // DirectComposition behavior in case these switch between overlays and
// compositing. See https://crbug.com/811118 for details. // compositing. See https://crbug.com/811118 for details.
@@ -2273,8 +2278,8 @@ void GLRenderer::DrawStreamVideoQuad(const StreamVideoDrawQuad* quad, @@ -2284,8 +2289,8 @@ void GLRenderer::DrawStreamVideoQuad(const StreamVideoDrawQuad* quad,
quad->resource_id()); quad->resource_id());
SetUseProgram(ProgramKey::VideoStream(tex_coord_precision), SetUseProgram(ProgramKey::VideoStream(tex_coord_precision),
@ -168,7 +168,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
DCHECK_EQ(GL_TEXTURE0, GetActiveTextureUnit(gl_)); DCHECK_EQ(GL_TEXTURE0, GetActiveTextureUnit(gl_));
gl_->BindTexture(GL_TEXTURE_EXTERNAL_OES, lock.texture_id()); gl_->BindTexture(GL_TEXTURE_EXTERNAL_OES, lock.texture_id());
@@ -2326,8 +2331,8 @@ void GLRenderer::FlushTextureQuadCache(BoundGeometry flush_binding) { @@ -2342,8 +2347,8 @@ void GLRenderer::FlushTextureQuadCache(BoundGeometry flush_binding) {
draw_cache_.nearest_neighbor ? GL_NEAREST : GL_LINEAR); draw_cache_.nearest_neighbor ? GL_NEAREST : GL_LINEAR);
// Bind the program to the GL state. // Bind the program to the GL state.
@ -179,7 +179,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
DCHECK_EQ(GL_TEXTURE0, GetActiveTextureUnit(gl_)); DCHECK_EQ(GL_TEXTURE0, GetActiveTextureUnit(gl_));
gl_->BindTexture(locked_quad.target(), locked_quad.texture_id()); gl_->BindTexture(locked_quad.target(), locked_quad.texture_id());
@@ -2982,7 +2987,9 @@ void GLRenderer::PrepareGeometry(BoundGeometry binding) { @@ -2998,7 +3003,9 @@ void GLRenderer::PrepareGeometry(BoundGeometry binding) {
void GLRenderer::SetUseProgram(const ProgramKey& program_key_no_color, void GLRenderer::SetUseProgram(const ProgramKey& program_key_no_color,
const gfx::ColorSpace& src_color_space, const gfx::ColorSpace& src_color_space,
const gfx::ColorSpace& dst_color_space) { const gfx::ColorSpace& dst_color_space) {
@ -190,7 +190,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
ProgramKey program_key = program_key_no_color; ProgramKey program_key = program_key_no_color;
const gfx::ColorTransform* color_transform = const gfx::ColorTransform* color_transform =
@@ -3336,7 +3343,7 @@ void GLRenderer::CopyRenderPassDrawQuadToOverlayResource( @@ -3352,7 +3359,7 @@ void GLRenderer::CopyRenderPassDrawQuadToOverlayResource(
*overlay_texture = FindOrCreateOverlayTexture( *overlay_texture = FindOrCreateOverlayTexture(
params.quad->render_pass_id, iosurface_width, iosurface_height, params.quad->render_pass_id, iosurface_width, iosurface_height,
@ -199,7 +199,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
*new_bounds = gfx::RectF(updated_dst_rect.origin(), *new_bounds = gfx::RectF(updated_dst_rect.origin(),
gfx::SizeF((*overlay_texture)->texture.size())); gfx::SizeF((*overlay_texture)->texture.size()));
@@ -3540,8 +3547,9 @@ void GLRenderer::FlushOverdrawFeedback(const gfx::Rect& output_rect) { @@ -3556,8 +3563,9 @@ void GLRenderer::FlushOverdrawFeedback(const gfx::Rect& output_rect) {
PrepareGeometry(SHARED_BINDING); PrepareGeometry(SHARED_BINDING);
@ -211,55 +211,17 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
gfx::Transform render_matrix; gfx::Transform render_matrix;
render_matrix.Translate(0.5 * output_rect.width() + output_rect.x(), render_matrix.Translate(0.5 * output_rect.width() + output_rect.x(),
@@ -3701,3 +3709,5 @@ gfx::Size GLRenderer::GetRenderPassBackingPixelSize( @@ -3717,3 +3725,5 @@ gfx::Size GLRenderer::GetRenderPassBackingPixelSize(
} }
} // namespace viz } // namespace viz
+ +
+#undef PATCH_CS +#undef PATCH_CS
diff --git a/components/viz/service/display/skia_renderer.cc b/components/viz/service/display/skia_renderer.cc
index 5a757c437d36f98d6d813ef2af81b46434cdc5de..86ed034d207fe5cdf6810de085cc34ea8981169c 100644
--- a/components/viz/service/display/skia_renderer.cc
+++ b/components/viz/service/display/skia_renderer.cc
@@ -708,9 +708,11 @@ void SkiaRenderer::DrawPictureQuad(const PictureDrawQuad* quad,
std::unique_ptr<SkCanvas> color_transform_canvas;
// TODO(enne): color transform needs to be replicated in gles2_cmd_decoder
- color_transform_canvas = SkCreateColorSpaceXformCanvas(
- current_canvas_, gfx::ColorSpace::CreateSRGB().ToSkColorSpace());
- raster_canvas = color_transform_canvas.get();
+ if (settings_->enable_color_correct_rendering) {
+ color_transform_canvas = SkCreateColorSpaceXformCanvas(
+ current_canvas_, gfx::ColorSpace::CreateSRGB().ToSkColorSpace());
+ raster_canvas = color_transform_canvas.get();
+ }
base::Optional<skia::OpacityFilterCanvas> opacity_canvas;
if (needs_transparency || disable_image_filtering) {
diff --git a/components/viz/service/display/software_renderer.cc b/components/viz/service/display/software_renderer.cc
index 0aba701c131f11f5e8be6ce9c1bebe6ccb44edf8..aac9c128ed3d212758d8d4a3ec774b651491d92f 100644
--- a/components/viz/service/display/software_renderer.cc
+++ b/components/viz/service/display/software_renderer.cc
@@ -332,9 +332,11 @@ void SoftwareRenderer::DrawPictureQuad(const PictureDrawQuad* quad) {
std::unique_ptr<SkCanvas> color_transform_canvas;
// TODO(enne): color transform needs to be replicated in gles2_cmd_decoder
- color_transform_canvas = SkCreateColorSpaceXformCanvas(
- current_canvas_, gfx::ColorSpace::CreateSRGB().ToSkColorSpace());
- raster_canvas = color_transform_canvas.get();
+ if (settings_->enable_color_correct_rendering) {
+ color_transform_canvas = SkCreateColorSpaceXformCanvas(
+ current_canvas_, gfx::ColorSpace::CreateSRGB().ToSkColorSpace());
+ raster_canvas = color_transform_canvas.get();
+ }
base::Optional<skia::OpacityFilterCanvas> opacity_canvas;
if (needs_transparency || disable_image_filtering) {
diff --git a/content/browser/gpu/gpu_process_host.cc b/content/browser/gpu/gpu_process_host.cc diff --git a/content/browser/gpu/gpu_process_host.cc b/content/browser/gpu/gpu_process_host.cc
index 1c93dfbc345d07769d7c91c8ecffc33bcd7505c1..ab87b6e5be09117e3dc1485a411ce72d3fa0d07f 100644 index e43e5f6bb667a62e7e1205e8da6073de6179e79f..027a552cfbfce3f4f8fe5670bec7db45ad19e57a 100644
--- a/content/browser/gpu/gpu_process_host.cc --- a/content/browser/gpu/gpu_process_host.cc
+++ b/content/browser/gpu/gpu_process_host.cc +++ b/content/browser/gpu/gpu_process_host.cc
@@ -193,6 +193,7 @@ GpuTerminationStatus ConvertToGpuTerminationStatus( @@ -192,6 +192,7 @@ GpuTerminationStatus ConvertToGpuTerminationStatus(
// Command-line switches to propagate to the GPU process. // Command-line switches to propagate to the GPU process.
static const char* const kSwitchNames[] = { static const char* const kSwitchNames[] = {
@ -268,10 +230,10 @@ index 1c93dfbc345d07769d7c91c8ecffc33bcd7505c1..ab87b6e5be09117e3dc1485a411ce72d
service_manager::switches::kGpuSandboxAllowSysVShm, service_manager::switches::kGpuSandboxAllowSysVShm,
service_manager::switches::kGpuSandboxFailuresFatal, service_manager::switches::kGpuSandboxFailuresFatal,
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
index 77f9ff3979592f711a2f8b8cea5df31376d7f31d..933b4b4cadae9f9d997ed517d35d30e1ab18f630 100644 index 17edbd3a08010f257152e857a178af83c9aaf3d6..dbd8c3066b61b38b43cc2bd439aa954cc06f9039 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc --- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -221,6 +221,7 @@ @@ -220,6 +220,7 @@
#include "ui/base/ui_base_switches.h" #include "ui/base/ui_base_switches.h"
#include "ui/base/ui_base_switches_util.h" #include "ui/base/ui_base_switches_util.h"
#include "ui/display/display_switches.h" #include "ui/display/display_switches.h"
@ -279,7 +241,7 @@ index 77f9ff3979592f711a2f8b8cea5df31376d7f31d..933b4b4cadae9f9d997ed517d35d30e1
#include "ui/gl/gl_switches.h" #include "ui/gl/gl_switches.h"
#include "ui/native_theme/native_theme_features.h" #include "ui/native_theme/native_theme_features.h"
@@ -3064,6 +3065,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( @@ -2951,6 +2952,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
// Propagate the following switches to the renderer command line (along // Propagate the following switches to the renderer command line (along
// with any associated values) if present in the browser command line. // with any associated values) if present in the browser command line.
static const char* const kSwitchNames[] = { static const char* const kSwitchNames[] = {
@ -288,10 +250,10 @@ index 77f9ff3979592f711a2f8b8cea5df31376d7f31d..933b4b4cadae9f9d997ed517d35d30e1
network::switches::kExplicitlyAllowedPorts, network::switches::kExplicitlyAllowedPorts,
service_manager::switches::kDisableInProcessStackTraces, service_manager::switches::kDisableInProcessStackTraces,
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index 5223ac9b87817c99b84f6a6f98d3c96be54e466d..8d07310695af146b694b3342296439ccecb0d74e 100644 index 7c243ad046a6cd7fa37f7c12878cb05fb2c70d24..a3efbf63e54da43ca6f70edc067678fa5c2cca92 100644
--- a/content/renderer/render_widget.cc --- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc +++ b/content/renderer/render_widget.cc
@@ -2655,6 +2655,9 @@ cc::LayerTreeSettings RenderWidget::GenerateLayerTreeSettings( @@ -2771,6 +2771,9 @@ cc::LayerTreeSettings RenderWidget::GenerateLayerTreeSettings(
settings.main_frame_before_activation_enabled = settings.main_frame_before_activation_enabled =
cmd.HasSwitch(cc::switches::kEnableMainFrameBeforeActivation); cmd.HasSwitch(cc::switches::kEnableMainFrameBeforeActivation);
@ -341,7 +303,7 @@ index d12f8a42cb6af501dad92483b957dcf33d76a6c9..fbc0ab37aef36b46a54c7afc54945161
if (color_space == ColorSpace::CreateSRGB()) { if (color_space == ColorSpace::CreateSRGB()) {
base::ScopedCFTypeRef<CFDataRef> srgb_icc( base::ScopedCFTypeRef<CFDataRef> srgb_icc(
diff --git a/ui/gfx/switches.cc b/ui/gfx/switches.cc diff --git a/ui/gfx/switches.cc b/ui/gfx/switches.cc
index 606cbb42070be3a826f73269cd2bf40454358b3d..bd31d565b002b653a6b104114c9616416ac86649 100644 index 26ac6442b4211e5fbe59193118e1eb8b713f6397..b3e2080fc3415303280613c57b4c351752eb3621 100644
--- a/ui/gfx/switches.cc --- a/ui/gfx/switches.cc
+++ b/ui/gfx/switches.cc +++ b/ui/gfx/switches.cc
@@ -7,6 +7,8 @@ @@ -7,6 +7,8 @@
@ -354,7 +316,7 @@ index 606cbb42070be3a826f73269cd2bf40454358b3d..bd31d565b002b653a6b104114c961641
// Disables DirectWrite font rendering for general UI elements. // Disables DirectWrite font rendering for general UI elements.
const char kDisableDirectWriteForUI[] = "disable-directwrite-for-ui"; const char kDisableDirectWriteForUI[] = "disable-directwrite-for-ui";
diff --git a/ui/gfx/switches.h b/ui/gfx/switches.h diff --git a/ui/gfx/switches.h b/ui/gfx/switches.h
index b206f18ad77c21774073c2fa07372d2234926414..992468ce95b2829702fcdb26c26362eccb5556c7 100644 index 41382819ef50470dc6913e547b4569c0bb991877..298d555cded22b211ddcd6d7b3f7202138445307 100644
--- a/ui/gfx/switches.h --- a/ui/gfx/switches.h
+++ b/ui/gfx/switches.h +++ b/ui/gfx/switches.h
@@ -11,6 +11,8 @@ @@ -11,6 +11,8 @@

View file

@ -12,10 +12,10 @@ this patch was introduced in Chrome 66.
Update(zcbenz): The bug is still in Chrome 72. Update(zcbenz): The bug is still in Chrome 72.
diff --git a/content/browser/frame_host/render_frame_proxy_host.cc b/content/browser/frame_host/render_frame_proxy_host.cc diff --git a/content/browser/frame_host/render_frame_proxy_host.cc b/content/browser/frame_host/render_frame_proxy_host.cc
index a5e18f465f79416c05fd3ab630b40b079a7a7cbc..d6f4717ee2122b86611d6149d5d1a9105d1baff1 100644 index 59ce8f3cbb143f97371bba507dc851bcf0fbfe00..5101f19660f3519e74dde7fa6d9533666a2629df 100644
--- a/content/browser/frame_host/render_frame_proxy_host.cc --- a/content/browser/frame_host/render_frame_proxy_host.cc
+++ b/content/browser/frame_host/render_frame_proxy_host.cc +++ b/content/browser/frame_host/render_frame_proxy_host.cc
@@ -263,6 +263,12 @@ void RenderFrameProxyHost::SetDestructionCallback( @@ -270,6 +270,12 @@ void RenderFrameProxyHost::SetDestructionCallback(
void RenderFrameProxyHost::OnDetach() { void RenderFrameProxyHost::OnDetach() {
if (frame_tree_node_->render_manager()->ForInnerDelegate()) { if (frame_tree_node_->render_manager()->ForInnerDelegate()) {

View file

@ -5,10 +5,10 @@ Subject: disable_hidden.patch
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
index 316e7cf9819c0ffe3a15a55e6bcada781d6d7832..d90f50ed29740b14e6259c4d6d14434222ddbfb4 100644 index bb1096d28ceb4117b582d7dde2f57c3317120716..61273d7aaac07635ee3497ce16af8a9e0d6f1ed8 100644
--- a/content/browser/renderer_host/render_widget_host_impl.cc --- a/content/browser/renderer_host/render_widget_host_impl.cc
+++ b/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc
@@ -760,6 +760,9 @@ void RenderWidgetHostImpl::WasHidden() { @@ -765,6 +765,9 @@ void RenderWidgetHostImpl::WasHidden() {
if (is_hidden_) if (is_hidden_)
return; return;
@ -19,7 +19,7 @@ index 316e7cf9819c0ffe3a15a55e6bcada781d6d7832..d90f50ed29740b14e6259c4d6d144342
TRACE_EVENT0("renderer_host", "RenderWidgetHostImpl::WasHidden"); TRACE_EVENT0("renderer_host", "RenderWidgetHostImpl::WasHidden");
diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h
index 4fd95dc7bdcd99342bd110d46b5829eb784e0f40..47af7e316c36c2f1733721170a6eff7fae39fa77 100644 index 4ea7d993a8d84eabf2485e07e51fa20f2c2c17e7..06ecfc4c90dc8105fdb2ed05386b5ea0e8a7ef3a 100644
--- a/content/browser/renderer_host/render_widget_host_impl.h --- a/content/browser/renderer_host/render_widget_host_impl.h
+++ b/content/browser/renderer_host/render_widget_host_impl.h +++ b/content/browser/renderer_host/render_widget_host_impl.h
@@ -153,6 +153,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl @@ -153,6 +153,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl

View file

@ -6,10 +6,10 @@ Subject: disable_user_gesture_requirement_for_beforeunload_dialogs.patch
See https://github.com/electron/electron/issues/10754 See https://github.com/electron/electron/issues/10754
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
index 1aa4f77b363a6f7d9e2badd6f0214f19c4e39ca6..40df17291b9a939aed9adf135b33851aea40cfde 100644 index 1d04d162342dafb337b014aad562cb452eddc6d4..2ba36366853b1a0435900a5946757c4bf5a92a6a 100644
--- a/third_party/blink/renderer/core/dom/document.cc --- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc +++ b/third_party/blink/renderer/core/dom/document.cc
@@ -3666,7 +3666,9 @@ bool Document::DispatchBeforeUnloadEvent(ChromeClient* chrome_client, @@ -3689,7 +3689,9 @@ bool Document::DispatchBeforeUnloadEvent(ChromeClient* chrome_client,
"frame that never had a user gesture since its load. " "frame that never had a user gesture since its load. "
"https://www.chromestatus.com/feature/5082396709879808"; "https://www.chromestatus.com/feature/5082396709879808";
Intervention::GenerateReport(frame_, "BeforeUnloadNoGesture", message); Intervention::GenerateReport(frame_, "BeforeUnloadNoGesture", message);

View file

@ -61,10 +61,10 @@ index e87afe5b8ee07f7038a7cc9c40832b6cd27884da..61c9a0dfff60f79c7b36ff5c7d741c06
// In the browser process we allow some overage to // In the browser process we allow some overage to
diff --git a/content/renderer/dom_storage/dom_storage_cached_area.cc b/content/renderer/dom_storage/dom_storage_cached_area.cc diff --git a/content/renderer/dom_storage/dom_storage_cached_area.cc b/content/renderer/dom_storage/dom_storage_cached_area.cc
index a7cdf900661bff52e1d3d9bc98d68e6a457c3fa7..ce302dcbece11880b5b6da4b6d5d807ba9dc09c9 100644 index 13bcf8e3f2882999e073d0c7ac6d8f1627f0bfa2..6d330cd1de358b477df4c1fed4d814c206a3643d 100644
--- a/content/renderer/dom_storage/dom_storage_cached_area.cc --- a/content/renderer/dom_storage/dom_storage_cached_area.cc
+++ b/content/renderer/dom_storage/dom_storage_cached_area.cc +++ b/content/renderer/dom_storage/dom_storage_cached_area.cc
@@ -53,11 +53,13 @@ bool DOMStorageCachedArea::SetItem(int connection_id, @@ -54,11 +54,13 @@ bool DOMStorageCachedArea::SetItem(int connection_id,
const base::string16& key, const base::string16& key,
const base::string16& value, const base::string16& value,
const GURL& page_url) { const GURL& page_url) {
@ -79,7 +79,7 @@ index a7cdf900661bff52e1d3d9bc98d68e6a457c3fa7..ce302dcbece11880b5b6da4b6d5d807b
PrimeIfNeeded(connection_id); PrimeIfNeeded(connection_id);
base::NullableString16 old_value; base::NullableString16 old_value;
diff --git a/content/renderer/dom_storage/local_storage_cached_area.cc b/content/renderer/dom_storage/local_storage_cached_area.cc diff --git a/content/renderer/dom_storage/local_storage_cached_area.cc b/content/renderer/dom_storage/local_storage_cached_area.cc
index c04e0e8bff1a7a41a1e18aca5403aed16a80aead..d63cec971f0a98f7b8ff30c1f6a0fa843efbecfa 100644 index 1b406b322f6de52d808b021015c656f60700645e..8bc713a723569e9d28212d68a0b2a22cd2bcc6c0 100644
--- a/content/renderer/dom_storage/local_storage_cached_area.cc --- a/content/renderer/dom_storage/local_storage_cached_area.cc
+++ b/content/renderer/dom_storage/local_storage_cached_area.cc +++ b/content/renderer/dom_storage/local_storage_cached_area.cc
@@ -142,11 +142,13 @@ bool LocalStorageCachedArea::SetItem(const base::string16& key, @@ -142,11 +142,13 @@ bool LocalStorageCachedArea::SetItem(const base::string16& key,
@ -97,10 +97,10 @@ index c04e0e8bff1a7a41a1e18aca5403aed16a80aead..d63cec971f0a98f7b8ff30c1f6a0fa84
EnsureLoaded(); EnsureLoaded();
bool result = false; bool result = false;
diff --git a/third_party/blink/renderer/modules/storage/cached_storage_area.cc b/third_party/blink/renderer/modules/storage/cached_storage_area.cc diff --git a/third_party/blink/renderer/modules/storage/cached_storage_area.cc b/third_party/blink/renderer/modules/storage/cached_storage_area.cc
index 35a114eb8fc2ee6176c25377081df7f04f8b72f1..689df99ebd955e544bbc1e3048842801fb9c5367 100644 index 21ce9fe01d3a125055fe3c3f29cc89ecf014944f..3ecdfe1011113ddaecbad1766cd8044366a9e47f 100644
--- a/third_party/blink/renderer/modules/storage/cached_storage_area.cc --- a/third_party/blink/renderer/modules/storage/cached_storage_area.cc
+++ b/third_party/blink/renderer/modules/storage/cached_storage_area.cc +++ b/third_party/blink/renderer/modules/storage/cached_storage_area.cc
@@ -101,11 +101,13 @@ bool CachedStorageArea::SetItem(const String& key, @@ -102,11 +102,13 @@ bool CachedStorageArea::SetItem(const String& key,
Source* source) { Source* source) {
DCHECK(areas_->Contains(source)); DCHECK(areas_->Contains(source));

View file

@ -7,10 +7,10 @@ Compilation of those files fails with the Chromium 68.
Remove the patch during the Chromium 69 upgrade. Remove the patch during the Chromium 69 upgrade.
diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn
index 1277dd8a03d1a5931b751781f219b617542be500..09809f43489711b117b0751f322d081b7ea1c3c8 100644 index fef425f94edcd483efaa16c33b642636a19071ed..8079c15fd65fa08049360dce6d1f5ce1b9aca8a9 100644
--- a/third_party/blink/renderer/platform/BUILD.gn --- a/third_party/blink/renderer/platform/BUILD.gn
+++ b/third_party/blink/renderer/platform/BUILD.gn +++ b/third_party/blink/renderer/platform/BUILD.gn
@@ -1741,7 +1741,7 @@ jumbo_source_set("blink_platform_unittests_sources") { @@ -1729,7 +1729,7 @@ jumbo_source_set("blink_platform_unittests_sources") {
"graphics/paint/drawing_display_item_test.cc", "graphics/paint/drawing_display_item_test.cc",
"graphics/paint/drawing_recorder_test.cc", "graphics/paint/drawing_recorder_test.cc",
"graphics/paint/float_clip_rect_test.cc", "graphics/paint/float_clip_rect_test.cc",

View file

@ -1,33 +1,26 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jeremy Apthorp <jeremya@chromium.org> From: Jeremy Apthorp <nornagon@nornagon.net>
Date: Fri, 1 Mar 2019 11:20:29 -0800 Date: Tue, 5 Mar 2019 11:12:55 -0800
Subject: fix backup includes for PTRACE_GET_THREAD_AREA on arm/arm64 Subject: fix: build on arm
<asm/ptrace-abi.h> doesn't exist in the arm/arm64 sysroots, and <sys/ptrace.h> backports https://chromium-review.googlesource.com/c/chromium/src/+/1496448
defines PTRACE_GET_THREAD_AREA as an enum, not a #define:
/* Get the thread pointer of a process. */
PTRACE_GET_THREAD_AREA = 22,
This changes the include trigger to check for PT_GET_THREAD_AREA as well as
PTRACE_GET_THREAD_AREA to catch the arm case.
Change-Id: I9044d9f315cbb15011f397a06d03d4bec7396985
diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
index 55394a791a54a2650fa2e1ed4d4e293b940d8fa2..805b13ba24b3f5d6b013b9f473e2e74afc29683d 100644 index 55394a791a54a2650fa2e1ed4d4e293b940d8fa2..68ce32a136ccc5130e3544b67dfb4af5c8b47a56 100644
--- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc --- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc +++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
@@ -34,12 +34,12 @@ @@ -34,12 +34,14 @@
#if !defined(OS_NACL_NONSFI) #if !defined(OS_NACL_NONSFI)
#include <sys/ioctl.h> #include <sys/ioctl.h>
#include <sys/ptrace.h> #include <sys/ptrace.h>
-#if !defined(PTRACE_GET_THREAD_AREA) && defined(OS_LINUX) && \ -#if !defined(PTRACE_GET_THREAD_AREA) && defined(OS_LINUX) && \
- !defined(OS_CHROMEOS) - !defined(OS_CHROMEOS)
+#if !defined(PTRACE_GET_THREAD_AREA) && !defined(__arm__) && \ +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(__arm__) && \
+ !defined(__aarch64__) && defined(OS_LINUX) && !defined(OS_CHROMEOS) + !defined(__aarch64__) && !defined(PTRACE_GET_THREAD_AREA)
// Also include asm/ptrace-abi.h since ptrace.h in older libc (for instance // Also include asm/ptrace-abi.h since ptrace.h in older libc (for instance
// the one in Ubuntu 16.04 LTS) is missing PTRACE_GET_THREAD_AREA. // the one in Ubuntu 16.04 LTS) is missing PTRACE_GET_THREAD_AREA.
+// asm/ptrace-abi.h doesn't exist on arm32 and PTRACE_GET_THREAD_AREA isn't
+// defined on aarch64, so don't try to include this on those platforms.
#include <asm/ptrace-abi.h> #include <asm/ptrace-abi.h>
-#endif // !PTRACE_GET_THREAD_AREA && OS_LINUX && !OS_CHROMEOS -#endif // !PTRACE_GET_THREAD_AREA && OS_LINUX && !OS_CHROMEOS
+#endif +#endif

View file

@ -7,10 +7,10 @@ Allows embedder to intercept site instances chosen by chromium
and respond with custom instance. and respond with custom instance.
diff --git a/content/browser/frame_host/render_frame_host_manager.cc b/content/browser/frame_host/render_frame_host_manager.cc diff --git a/content/browser/frame_host/render_frame_host_manager.cc b/content/browser/frame_host/render_frame_host_manager.cc
index f9f8e5204d1d92e87370f859c294919d2a1991c3..ff42619d67b916bacb63f99b2391c905cccde218 100644 index 9d8a7f4c2a1f671828b17ce0a6d49527ea49373e..e4e347d1c0de7d7263f76104a668693fce8dec9b 100644
--- a/content/browser/frame_host/render_frame_host_manager.cc --- a/content/browser/frame_host/render_frame_host_manager.cc
+++ b/content/browser/frame_host/render_frame_host_manager.cc +++ b/content/browser/frame_host/render_frame_host_manager.cc
@@ -1978,6 +1978,16 @@ bool RenderFrameHostManager::InitRenderView( @@ -2031,6 +2031,16 @@ bool RenderFrameHostManager::InitRenderView(
scoped_refptr<SiteInstance> scoped_refptr<SiteInstance>
RenderFrameHostManager::GetSiteInstanceForNavigationRequest( RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
const NavigationRequest& request) { const NavigationRequest& request) {
@ -27,7 +27,7 @@ index f9f8e5204d1d92e87370f859c294919d2a1991c3..ff42619d67b916bacb63f99b2391c905
// First, check if the navigation can switch SiteInstances. If not, the // First, check if the navigation can switch SiteInstances. If not, the
// navigation should use the current SiteInstance. // navigation should use the current SiteInstance.
SiteInstance* current_site_instance = render_frame_host_->GetSiteInstance(); SiteInstance* current_site_instance = render_frame_host_->GetSiteInstance();
@@ -2010,6 +2020,51 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( @@ -2063,6 +2073,51 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
request.common_params().url); request.common_params().url);
no_renderer_swap_allowed |= no_renderer_swap_allowed |=
request.from_begin_navigation() && !can_renderer_initiate_transfer; request.from_begin_navigation() && !can_renderer_initiate_transfer;
@ -79,7 +79,7 @@ index f9f8e5204d1d92e87370f859c294919d2a1991c3..ff42619d67b916bacb63f99b2391c905
} else { } else {
// Subframe navigations will use the current renderer, unless specifically // Subframe navigations will use the current renderer, unless specifically
// allowed to swap processes. // allowed to swap processes.
@@ -2021,23 +2076,17 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( @@ -2074,23 +2129,17 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
if (no_renderer_swap_allowed && !should_swap_for_error_isolation) if (no_renderer_swap_allowed && !should_swap_for_error_isolation)
return scoped_refptr<SiteInstance>(current_site_instance); return scoped_refptr<SiteInstance>(current_site_instance);
@ -108,10 +108,10 @@ index f9f8e5204d1d92e87370f859c294919d2a1991c3..ff42619d67b916bacb63f99b2391c905
} }
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
index 9d00218ae972b34073c84f2de78dee934962c3d8..e474d899fbcebfbaf4cb2ec0b63cc963292ee39a 100644 index b6c528126bde8c7ee8cdf8440ae51cfe1a742b9a..8a4f94786e75c7abecd1a53fd6f0c2c0421534db 100644
--- a/content/public/browser/content_browser_client.cc --- a/content/public/browser/content_browser_client.cc
+++ b/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc
@@ -48,6 +48,16 @@ void OverrideOnBindInterface(const service_manager::BindSourceInfo& remote_info, @@ -51,6 +51,16 @@ void OverrideOnBindInterface(const service_manager::BindSourceInfo& remote_info,
handle); handle);
} }
@ -129,10 +129,10 @@ index 9d00218ae972b34073c84f2de78dee934962c3d8..e474d899fbcebfbaf4cb2ec0b63cc963
const MainFunctionParams& parameters) { const MainFunctionParams& parameters) {
return nullptr; return nullptr;
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
index 09aca495389e48a8dbc1ea45b8bb636aa13d2486..2cc843982a697dbd693ca1d5fda3a8ab68c96f73 100644 index 72944bc96a2ec71be1b20fa68e7994445f225824..bbc4263798a4cf13c0a6f3d7d62f01eb1dfe4784 100644
--- a/content/public/browser/content_browser_client.h --- a/content/public/browser/content_browser_client.h
+++ b/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h
@@ -206,8 +206,37 @@ CONTENT_EXPORT void OverrideOnBindInterface( @@ -210,8 +210,37 @@ CONTENT_EXPORT void OverrideOnBindInterface(
// the observer interfaces.) // the observer interfaces.)
class CONTENT_EXPORT ContentBrowserClient { class CONTENT_EXPORT ContentBrowserClient {
public: public:
@ -165,7 +165,7 @@ index 09aca495389e48a8dbc1ea45b8bb636aa13d2486..2cc843982a697dbd693ca1d5fda3a8ab
+ // Electron: Registers a pending site instance during a navigation. + // Electron: Registers a pending site instance during a navigation.
+ virtual void RegisterPendingSiteInstance( + virtual void RegisterPendingSiteInstance(
+ content::RenderFrameHost* rfh, + content::RenderFrameHost* rfh,
+ content::SiteInstance* pending_site_instance){}; + content::SiteInstance* pending_site_instance) {}
+ +
// Allows the embedder to set any number of custom BrowserMainParts // Allows the embedder to set any number of custom BrowserMainParts
// implementations for the browser startup code. See comments in // implementations for the browser startup code. See comments in

View file

@ -36,7 +36,7 @@ index 413e6c5bcc74cd01730c5d4dc66eb92aaf7df8de..6c5d101fef97e880bee20d2f76e4b339
v8::Isolate* isolate() { return isolate_; } v8::Isolate* isolate() { return isolate_; }
diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc
index 006f6f4a768597f227dacbf46e974e33f4e63763..09dd4718f7ba00dfa909859a088639016675245a 100644 index c8baaa5e75582dd60072b5626388950893e70f2b..2ed448852721468124f550e4dc74a8bceeec15ce 100644
--- a/gin/v8_initializer.cc --- a/gin/v8_initializer.cc
+++ b/gin/v8_initializer.cc +++ b/gin/v8_initializer.cc
@@ -204,12 +204,14 @@ enum LoadV8FileResult { @@ -204,12 +204,14 @@ enum LoadV8FileResult {

View file

@ -6,11 +6,11 @@ Subject: gritsettings_resource_ids.patch
Add electron resources file to the list of resource ids generation. Add electron resources file to the list of resource ids generation.
diff --git a/tools/gritsettings/resource_ids b/tools/gritsettings/resource_ids diff --git a/tools/gritsettings/resource_ids b/tools/gritsettings/resource_ids
index bc56e877d3a8cc3fc3bd11e23b50f9abbb958362..36110a4c960cd572789ff14d69aad29fa5f838a8 100644 index e823c9b9edfd1aaac4909d8926e729ef79f25d70..2810e6b743507257f23a797c67ee23911c5745cf 100644
--- a/tools/gritsettings/resource_ids --- a/tools/gritsettings/resource_ids
+++ b/tools/gritsettings/resource_ids +++ b/tools/gritsettings/resource_ids
@@ -427,6 +427,11 @@ @@ -424,6 +424,11 @@
"includes": [28850], "includes": [28880],
}, },
+ "electron/electron_resources.grd": { + "electron/electron_resources.grd": {

View file

@ -6,7 +6,7 @@ Subject: gtk_visibility.patch
Allow electron to depend on GTK in the GN build. Allow electron to depend on GTK in the GN build.
diff --git a/build/config/linux/gtk/BUILD.gn b/build/config/linux/gtk/BUILD.gn diff --git a/build/config/linux/gtk/BUILD.gn b/build/config/linux/gtk/BUILD.gn
index fe2e10627f42c8355fd176ed24b54cfab916a72a..7b48b68de04c2cbfc4380e6e38c9ac07dbc7784a 100644 index d78f7407c179fe44180800a234e9461c56849402..dae8fa63037803ebaf2e04fb2b9547d2db7ba29c 100644
--- a/build/config/linux/gtk/BUILD.gn --- a/build/config/linux/gtk/BUILD.gn
+++ b/build/config/linux/gtk/BUILD.gn +++ b/build/config/linux/gtk/BUILD.gn
@@ -26,6 +26,7 @@ group("gtk") { @@ -26,6 +26,7 @@ group("gtk") {

View file

@ -6,7 +6,7 @@ Subject: libgtkui_export.patch
Export libgtkui symbols for the GN component build. Export libgtkui symbols for the GN component build.
diff --git a/chrome/browser/ui/libgtkui/gtk_util.h b/chrome/browser/ui/libgtkui/gtk_util.h diff --git a/chrome/browser/ui/libgtkui/gtk_util.h b/chrome/browser/ui/libgtkui/gtk_util.h
index 32b0a390255dd39a7d02f094c0e59b205b00dabd..afa2d250beca30f50dbb1684d5217330c4d60bbb 100644 index adea4a859d96e219acc92c9178574f089a57944c..df615a91c00d22cabafffebe151728010fe9c1c4 100644
--- a/chrome/browser/ui/libgtkui/gtk_util.h --- a/chrome/browser/ui/libgtkui/gtk_util.h
+++ b/chrome/browser/ui/libgtkui/gtk_util.h +++ b/chrome/browser/ui/libgtkui/gtk_util.h
@@ -11,6 +11,7 @@ @@ -11,6 +11,7 @@

View file

@ -6,10 +6,10 @@ Subject: mas-cfisobjc.patch
Removes usage of the _CFIsObjC private API. Removes usage of the _CFIsObjC private API.
diff --git a/base/mac/foundation_util.mm b/base/mac/foundation_util.mm diff --git a/base/mac/foundation_util.mm b/base/mac/foundation_util.mm
index 2d619e791c03a17d29ed47abe765a0a644b364bc..c36989c429344d85a0f5efe11754de13b12ec5df 100644 index 26a40417ae92c2e12c3901c50e1f101d9b0f57e9..810fbeae866a1507762703296fdd836dd3c9e4ba 100644
--- a/base/mac/foundation_util.mm --- a/base/mac/foundation_util.mm
+++ b/base/mac/foundation_util.mm +++ b/base/mac/foundation_util.mm
@@ -26,7 +26,6 @@ CFTypeID SecKeyGetTypeID(); @@ -26,7 +26,6 @@
#if !defined(OS_IOS) #if !defined(OS_IOS)
CFTypeID SecACLGetTypeID(); CFTypeID SecACLGetTypeID();
CFTypeID SecTrustedApplicationGetTypeID(); CFTypeID SecTrustedApplicationGetTypeID();
@ -17,7 +17,7 @@ index 2d619e791c03a17d29ed47abe765a0a644b364bc..c36989c429344d85a0f5efe11754de13
#endif #endif
} // extern "C" } // extern "C"
@@ -326,8 +325,7 @@ NSFont* CFToNSCast(CTFontRef cf_val) { @@ -315,8 +314,7 @@ void SetBaseBundleID(const char* new_base_bundle_id) {
const_cast<NSFont*>(reinterpret_cast<const NSFont*>(cf_val)); const_cast<NSFont*>(reinterpret_cast<const NSFont*>(cf_val));
DCHECK(!cf_val || DCHECK(!cf_val ||
CTFontGetTypeID() == CFGetTypeID(cf_val) || CTFontGetTypeID() == CFGetTypeID(cf_val) ||
@ -27,7 +27,7 @@ index 2d619e791c03a17d29ed47abe765a0a644b364bc..c36989c429344d85a0f5efe11754de13
return ns_val; return ns_val;
} }
@@ -395,9 +393,6 @@ CFCast<CTFontRef>(const CFTypeRef& cf_val) { @@ -384,9 +382,6 @@ CTFontRef NSToCFCast(NSFont* ns_val) {
return (CTFontRef)(cf_val); return (CTFontRef)(cf_val);
} }

View file

@ -6,10 +6,10 @@ Subject: mas-cgdisplayusesforcetogray.patch
Removes usage of the CGDisplayUsesForceToGray private API. Removes usage of the CGDisplayUsesForceToGray private API.
diff --git a/ui/display/mac/screen_mac.mm b/ui/display/mac/screen_mac.mm diff --git a/ui/display/mac/screen_mac.mm b/ui/display/mac/screen_mac.mm
index 96f17137071a157737fe09e69a6db393040c69ea..dd1c41ed4a80dbdaa37a5d68ffb7c0b11ea0afc3 100644 index 4d5b83a1a4b0c1d03378ab1aae8ef43935c387d3..463ff7105ac329cafed793fd87cfc8423e0a0ed7 100644
--- a/ui/display/mac/screen_mac.mm --- a/ui/display/mac/screen_mac.mm
+++ b/ui/display/mac/screen_mac.mm +++ b/ui/display/mac/screen_mac.mm
@@ -106,7 +106,17 @@ Display BuildDisplayForScreen(NSScreen* screen) { @@ -107,7 +107,17 @@ Display BuildDisplayForScreen(NSScreen* screen) {
display.set_color_depth(NSBitsPerPixelFromDepth([screen depth])); display.set_color_depth(NSBitsPerPixelFromDepth([screen depth]));
display.set_depth_per_component(NSBitsPerSampleFromDepth([screen depth])); display.set_depth_per_component(NSBitsPerSampleFromDepth([screen depth]));

View file

@ -7,10 +7,10 @@ Removes usage of the _LSSetApplicationLaunchServicesServerConnectionStatus
private API. private API.
diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
index 0b9d501e7b0da03c2bc668944d6b4172c71dae72..0ad797171bd359037bcf8d3e7c9e68d3408cd49c 100644 index a838f0ccfe1991bf2cf7c394c5e8edba101c30ab..39e87967360a9c7a2856ce4df9c182c782efb2a5 100644
--- a/content/gpu/gpu_main.cc --- a/content/gpu/gpu_main.cc
+++ b/content/gpu/gpu_main.cc +++ b/content/gpu/gpu_main.cc
@@ -280,8 +280,10 @@ int GpuMain(const MainFunctionParams& parameters) { @@ -278,8 +278,10 @@ int GpuMain(const MainFunctionParams& parameters) {
std::unique_ptr<base::MessagePump> pump(new base::MessagePumpNSRunLoop()); std::unique_ptr<base::MessagePump> pump(new base::MessagePumpNSRunLoop());
main_message_loop.reset(new base::MessageLoop(std::move(pump))); main_message_loop.reset(new base::MessageLoop(std::move(pump)));

View file

@ -18,7 +18,7 @@ index 94afefcee81b87c05bf9b1199d90d3d4b5ea84a6..2ec7f04c71824b47de1ddbf1f0e8625d
extern "C" { extern "C" {
// Kill ring calls. Would be better to use NSKillRing.h, but that's not // Kill ring calls. Would be better to use NSKillRing.h, but that's not
@@ -39,38 +40,53 @@ NSString* _NSYankFromKillRing(); @@ -39,38 +40,53 @@
void _NSNewKillRingSequence(); void _NSNewKillRingSequence();
void _NSSetKillRingToYankedState(); void _NSSetKillRingToYankedState();
} }
@ -92,7 +92,7 @@ index 7a1260db0a139f9f3f8a823af2c220f36162812a..bf9cf7046e2fc9cdfee5b92f2a348185
namespace blink { namespace blink {
@@ -73,10 +75,12 @@ bool ThemePainterMac::PaintTextField(const Node* node, @@ -73,10 +75,12 @@ void _NSDrawCarbonThemeListBox(NSRect frame,
// behavior change while remaining a fragile solution. // behavior change while remaining a fragile solution.
// https://bugs.chromium.org/p/chromium/issues/detail?id=658085#c3 // https://bugs.chromium.org/p/chromium/issues/detail?id=658085#c3
if (!use_ns_text_field_cell) { if (!use_ns_text_field_cell) {
@ -105,7 +105,7 @@ index 7a1260db0a139f9f3f8a823af2c220f36162812a..bf9cf7046e2fc9cdfee5b92f2a348185
return false; return false;
} }
@@ -162,10 +166,12 @@ bool ThemePainterMac::PaintTextArea(const Node* node, @@ -162,10 +166,12 @@ void _NSDrawCarbonThemeListBox(NSRect frame,
const PaintInfo& paint_info, const PaintInfo& paint_info,
const IntRect& r) { const IntRect& r) {
LocalCurrentGraphicsContext local_context(paint_info.context, r); LocalCurrentGraphicsContext local_context(paint_info.context, r);

View file

@ -38,10 +38,10 @@ index d38fa48b8b890d90f2911995a2a51c249005c827..5fe68c71fe101a307ef565013a91b109
// is concerned. // is concerned.
@property(nonatomic, readonly) NSString* subrole; @property(nonatomic, readonly) NSString* subrole;
diff --git a/content/browser/accessibility/browser_accessibility_cocoa.mm b/content/browser/accessibility/browser_accessibility_cocoa.mm diff --git a/content/browser/accessibility/browser_accessibility_cocoa.mm b/content/browser/accessibility/browser_accessibility_cocoa.mm
index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad6e989746 100644 index aa15efe9a195a0b46cf95125dd9259b6df21377e..375ab8bed85a3d8966053bee2111c04132be61fb 100644
--- a/content/browser/accessibility/browser_accessibility_cocoa.mm --- a/content/browser/accessibility/browser_accessibility_cocoa.mm
+++ b/content/browser/accessibility/browser_accessibility_cocoa.mm +++ b/content/browser/accessibility/browser_accessibility_cocoa.mm
@@ -135,6 +135,7 @@ NSDictionary* attributeToMethodNameMap = nil; @@ -140,6 +140,7 @@
// VoiceOver uses -1 to mean "no limit" for AXResultsLimit. // VoiceOver uses -1 to mean "no limit" for AXResultsLimit.
const int kAXResultsLimitNoLimit = -1; const int kAXResultsLimitNoLimit = -1;
@ -49,7 +49,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
extern "C" { extern "C" {
// The following are private accessibility APIs required for cursor navigation // The following are private accessibility APIs required for cursor navigation
@@ -341,6 +342,7 @@ NSAttributedString* GetAttributedTextForTextMarkerRange( @@ -344,6 +345,7 @@ void AddMisspelledTextAttributes(
AddMisspelledTextAttributes(text_only_objects, attributed_text); AddMisspelledTextAttributes(text_only_objects, attributed_text);
return [attributed_text attributedSubstringFromRange:range]; return [attributed_text attributedSubstringFromRange:range];
} }
@ -57,9 +57,9 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
// Returns an autoreleased copy of the AXNodeData's attribute. // Returns an autoreleased copy of the AXNodeData's attribute.
NSString* NSStringForStringAttribute( NSString* NSStringForStringAttribute(
@@ -595,7 +597,9 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -613,7 +615,9 @@ + (void)initialize {
{NSAccessibilityDOMIdentifierAttribute, @"domIdentifier"},
{NSAccessibilityEditableAncestorAttribute, @"editableAncestor"}, {NSAccessibilityEditableAncestorAttribute, @"editableAncestor"},
{NSAccessibilityElementBusyAttribute, @"elementBusy"},
{NSAccessibilityEnabledAttribute, @"enabled"}, {NSAccessibilityEnabledAttribute, @"enabled"},
+#ifndef MAS_BUILD +#ifndef MAS_BUILD
{NSAccessibilityEndTextMarkerAttribute, @"endTextMarker"}, {NSAccessibilityEndTextMarkerAttribute, @"endTextMarker"},
@ -67,7 +67,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
{NSAccessibilityExpandedAttribute, @"expanded"}, {NSAccessibilityExpandedAttribute, @"expanded"},
{NSAccessibilityFocusableAncestorAttribute, @"focusableAncestor"}, {NSAccessibilityFocusableAncestorAttribute, @"focusableAncestor"},
{NSAccessibilityFocusedAttribute, @"focused"}, {NSAccessibilityFocusedAttribute, @"focused"},
@@ -630,13 +634,17 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -648,13 +652,17 @@ + (void)initialize {
{NSAccessibilityRowsAttribute, @"rows"}, {NSAccessibilityRowsAttribute, @"rows"},
// TODO(aboxhall): expose // TODO(aboxhall): expose
// NSAccessibilityServesAsTitleForUIElementsAttribute // NSAccessibilityServesAsTitleForUIElementsAttribute
@ -85,7 +85,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
{NSAccessibilitySizeAttribute, @"size"}, {NSAccessibilitySizeAttribute, @"size"},
{NSAccessibilitySortDirectionAttribute, @"sortDirection"}, {NSAccessibilitySortDirectionAttribute, @"sortDirection"},
{NSAccessibilitySubroleAttribute, @"subrole"}, {NSAccessibilitySubroleAttribute, @"subrole"},
@@ -1052,6 +1060,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -1143,6 +1151,7 @@ - (NSNumber*)enabled {
ax::mojom::Restriction::kDisabled]; ax::mojom::Restriction::kDisabled];
} }
@ -93,7 +93,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
// Returns a text marker that points to the last character in the document that // Returns a text marker that points to the last character in the document that
// can be selected with VoiceOver. // can be selected with VoiceOver.
- (id)endTextMarker { - (id)endTextMarker {
@@ -1062,6 +1071,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -1153,6 +1162,7 @@ - (id)endTextMarker {
BrowserAccessibilityPositionInstance position = root->CreatePositionAt(0); BrowserAccessibilityPositionInstance position = root->CreatePositionAt(0);
return CreateTextMarker(position->CreatePositionAtEndOfAnchor()); return CreateTextMarker(position->CreatePositionAtEndOfAnchor());
} }
@ -101,7 +101,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
- (NSNumber*)expanded { - (NSNumber*)expanded {
if (![self instanceActive]) if (![self instanceActive])
@@ -1922,6 +1932,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -2036,6 +2046,7 @@ - (NSValue*)selectedTextRange {
return [NSValue valueWithRange:NSMakeRange(selStart, selLength)]; return [NSValue valueWithRange:NSMakeRange(selStart, selLength)];
} }
@ -109,7 +109,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
- (id)selectedTextMarkerRange { - (id)selectedTextMarkerRange {
if (![self instanceActive]) if (![self instanceActive])
return nil; return nil;
@@ -1954,6 +1965,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -2068,6 +2079,7 @@ - (id)selectedTextMarkerRange {
anchorAffinity, *focusObject, anchorAffinity, *focusObject,
focusOffset, focusAffinity)); focusOffset, focusAffinity));
} }
@ -117,7 +117,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
- (NSValue*)size { - (NSValue*)size {
if (![self instanceActive]) if (![self instanceActive])
@@ -1986,6 +1998,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -2100,6 +2112,7 @@ - (NSString*)sortDirection {
return nil; return nil;
} }
@ -125,7 +125,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
// Returns a text marker that points to the first character in the document that // Returns a text marker that points to the first character in the document that
// can be selected with VoiceOver. // can be selected with VoiceOver.
- (id)startTextMarker { - (id)startTextMarker {
@@ -1996,6 +2009,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -2110,6 +2123,7 @@ - (id)startTextMarker {
BrowserAccessibilityPositionInstance position = root->CreatePositionAt(0); BrowserAccessibilityPositionInstance position = root->CreatePositionAt(0);
return CreateTextMarker(position->CreatePositionAtStartOfAnchor()); return CreateTextMarker(position->CreatePositionAtStartOfAnchor());
} }
@ -133,7 +133,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
// Returns a subrole based upon the role. // Returns a subrole based upon the role.
- (NSString*) subrole { - (NSString*) subrole {
@@ -2301,12 +2315,14 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -2415,12 +2429,14 @@ - (NSAttributedString*)attributedValueForRange:(NSRange)range {
NSMutableAttributedString* attributedValue = NSMutableAttributedString* attributedValue =
[[[NSMutableAttributedString alloc] initWithString:value] autorelease]; [[[NSMutableAttributedString alloc] initWithString:value] autorelease];
@ -148,7 +148,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
return [attributedValue attributedSubstringFromRange:range]; return [attributedValue attributedSubstringFromRange:range];
} }
@@ -2392,6 +2408,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -2506,6 +2522,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
return ToBrowserAccessibilityCocoa(cell); return ToBrowserAccessibilityCocoa(cell);
} }
@ -156,7 +156,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
if ([attribute isEqualToString:@"AXUIElementForTextMarker"]) { if ([attribute isEqualToString:@"AXUIElementForTextMarker"]) {
BrowserAccessibilityPositionInstance position = BrowserAccessibilityPositionInstance position =
CreatePositionFromTextMarker(parameter); CreatePositionFromTextMarker(parameter);
@@ -2569,6 +2586,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -2683,6 +2700,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
NSString* text = GetTextForTextMarkerRange(parameter); NSString* text = GetTextForTextMarkerRange(parameter);
return [NSNumber numberWithInt:[text length]]; return [NSNumber numberWithInt:[text length]];
} }
@ -164,7 +164,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
if ([attribute isEqualToString: if ([attribute isEqualToString:
NSAccessibilityBoundsForRangeParameterizedAttribute]) { NSAccessibilityBoundsForRangeParameterizedAttribute]) {
@@ -2602,6 +2620,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -2716,6 +2734,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
return nil; return nil;
} }
@ -172,7 +172,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
if ([attribute isEqualToString: if ([attribute isEqualToString:
NSAccessibilityLineTextMarkerRangeForTextMarkerParameterizedAttribute]) { NSAccessibilityLineTextMarkerRangeForTextMarkerParameterizedAttribute]) {
BrowserAccessibilityPositionInstance position = BrowserAccessibilityPositionInstance position =
@@ -2677,6 +2696,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired"; @@ -2791,6 +2810,7 @@ AXPlatformRange range(position->CreatePreviousLineStartPosition(
return @(child->GetIndexInParent()); return @(child->GetIndexInParent());
} }
@ -181,10 +181,10 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
return nil; return nil;
} }
diff --git a/content/browser/accessibility/browser_accessibility_manager_mac.mm b/content/browser/accessibility/browser_accessibility_manager_mac.mm diff --git a/content/browser/accessibility/browser_accessibility_manager_mac.mm b/content/browser/accessibility/browser_accessibility_manager_mac.mm
index 242a86ddd00517adc5e09310a25739ee34b3d23c..aa95e8ba159e5e185f0814d13d8743f3e5be9b67 100644 index 7fe7130abd6a4844dd503b9cee198c8204cb0985..3e6b0ad576d3aa9951f84f6ce4175d84ffd67036 100644
--- a/content/browser/accessibility/browser_accessibility_manager_mac.mm --- a/content/browser/accessibility/browser_accessibility_manager_mac.mm
+++ b/content/browser/accessibility/browser_accessibility_manager_mac.mm +++ b/content/browser/accessibility/browser_accessibility_manager_mac.mm
@@ -463,6 +463,7 @@ NSDictionary* BrowserAccessibilityManagerMac:: @@ -464,6 +464,7 @@ void PostAnnouncementNotification(NSString* announcement) {
[user_info setObject:native_focus_object [user_info setObject:native_focus_object
forKey:NSAccessibilityTextChangeElement]; forKey:NSAccessibilityTextChangeElement];
@ -192,7 +192,7 @@ index 242a86ddd00517adc5e09310a25739ee34b3d23c..aa95e8ba159e5e185f0814d13d8743f3
id selected_text = [native_focus_object selectedTextMarkerRange]; id selected_text = [native_focus_object selectedTextMarkerRange];
if (selected_text) { if (selected_text) {
NSString* const NSAccessibilitySelectedTextMarkerRangeAttribute = NSString* const NSAccessibilitySelectedTextMarkerRangeAttribute =
@@ -470,6 +471,7 @@ NSDictionary* BrowserAccessibilityManagerMac:: @@ -471,6 +472,7 @@ void PostAnnouncementNotification(NSString* announcement) {
[user_info setObject:selected_text [user_info setObject:selected_text
forKey:NSAccessibilitySelectedTextMarkerRangeAttribute]; forKey:NSAccessibilitySelectedTextMarkerRangeAttribute];
} }
@ -201,7 +201,7 @@ index 242a86ddd00517adc5e09310a25739ee34b3d23c..aa95e8ba159e5e185f0814d13d8743f3
} }
diff --git a/content/renderer/renderer_main_platform_delegate_mac.mm b/content/renderer/renderer_main_platform_delegate_mac.mm diff --git a/content/renderer/renderer_main_platform_delegate_mac.mm b/content/renderer/renderer_main_platform_delegate_mac.mm
index b7142c2871faf4a0ba8be79266e9515d81585bdd..3d80c332e9af280a166612f6be54b6f767d729a1 100644 index d6e9a7064687abfcf5fa874ee0a454806586db04..7c7db44d8d66ca1f9ad570abf552b6454cc0eac0 100644
--- a/content/renderer/renderer_main_platform_delegate_mac.mm --- a/content/renderer/renderer_main_platform_delegate_mac.mm
+++ b/content/renderer/renderer_main_platform_delegate_mac.mm +++ b/content/renderer/renderer_main_platform_delegate_mac.mm
@@ -23,9 +23,11 @@ @@ -23,9 +23,11 @@
@ -211,12 +211,12 @@ index b7142c2871faf4a0ba8be79266e9515d81585bdd..3d80c332e9af280a166612f6be54b6f7
+#ifndef MAS_BUILD +#ifndef MAS_BUILD
extern "C" { extern "C" {
CGError CGSSetDenyWindowServerConnections(bool); CGError CGSSetDenyWindowServerConnections(bool);
}; }
+#endif +#endif
namespace content { namespace content {
@@ -35,6 +37,7 @@ namespace { @@ -35,6 +37,7 @@
// verifies there are no existing open connections), and then indicates that // verifies there are no existing open connections), and then indicates that
// Chrome should continue execution without access to launchservicesd. // Chrome should continue execution without access to launchservicesd.
void DisableSystemServices() { void DisableSystemServices() {
@ -233,7 +233,7 @@ index b7142c2871faf4a0ba8be79266e9515d81585bdd..3d80c332e9af280a166612f6be54b6f7
// You are about to read a pretty disgusting hack. In a static initializer, // You are about to read a pretty disgusting hack. In a static initializer,
diff --git a/device/bluetooth/bluetooth_adapter_mac.mm b/device/bluetooth/bluetooth_adapter_mac.mm diff --git a/device/bluetooth/bluetooth_adapter_mac.mm b/device/bluetooth/bluetooth_adapter_mac.mm
index 6299846975301964c4066dff1a7eec40778e8d7f..c9c64e9ea8af9c02099695db38c27871e4e19852 100644 index fe0b73b51492ca08cbebf3aec74ea0a7caf44aef..fb8b362097f18d947219af36f84b9bea7d4eccf1 100644
--- a/device/bluetooth/bluetooth_adapter_mac.mm --- a/device/bluetooth/bluetooth_adapter_mac.mm
+++ b/device/bluetooth/bluetooth_adapter_mac.mm +++ b/device/bluetooth/bluetooth_adapter_mac.mm
@@ -36,6 +36,7 @@ @@ -36,6 +36,7 @@
@ -244,7 +244,7 @@ index 6299846975301964c4066dff1a7eec40778e8d7f..c9c64e9ea8af9c02099695db38c27871
extern "C" { extern "C" {
// Undocumented IOBluetooth Preference API [1]. Used by `blueutil` [2] and // Undocumented IOBluetooth Preference API [1]. Used by `blueutil` [2] and
// `Karabiner` [3] to programmatically control the Bluetooth state. Calling the // `Karabiner` [3] to programmatically control the Bluetooth state. Calling the
@@ -49,6 +50,7 @@ extern "C" { @@ -49,6 +50,7 @@
// [4] https://support.apple.com/kb/PH25091 // [4] https://support.apple.com/kb/PH25091
void IOBluetoothPreferenceSetControllerPowerState(int state); void IOBluetoothPreferenceSetControllerPowerState(int state);
} }
@ -252,7 +252,7 @@ index 6299846975301964c4066dff1a7eec40778e8d7f..c9c64e9ea8af9c02099695db38c27871
namespace { namespace {
@@ -128,8 +130,10 @@ BluetoothAdapterMac::BluetoothAdapterMac() @@ -128,8 +130,10 @@ CBCentralManagerState GetCBManagerState(CBCentralManager* manager) {
controller_state_function_( controller_state_function_(
base::BindRepeating(&BluetoothAdapterMac::GetHostControllerState, base::BindRepeating(&BluetoothAdapterMac::GetHostControllerState,
base::Unretained(this))), base::Unretained(this))),
@ -263,7 +263,7 @@ index 6299846975301964c4066dff1a7eec40778e8d7f..c9c64e9ea8af9c02099695db38c27871
should_update_name_(true), should_update_name_(true),
classic_discovery_manager_( classic_discovery_manager_(
BluetoothDiscoveryManagerMac::CreateClassic(this)), BluetoothDiscoveryManagerMac::CreateClassic(this)),
@@ -327,8 +331,12 @@ bool BluetoothAdapterMac::IsLowEnergyAvailable() { @@ -327,8 +331,12 @@ CBCentralManagerState GetCBManagerState(CBCentralManager* manager) {
} }
bool BluetoothAdapterMac::SetPoweredImpl(bool powered) { bool BluetoothAdapterMac::SetPoweredImpl(bool powered) {
@ -277,10 +277,10 @@ index 6299846975301964c4066dff1a7eec40778e8d7f..c9c64e9ea8af9c02099695db38c27871
void BluetoothAdapterMac::RemovePairingDelegateInternal( void BluetoothAdapterMac::RemovePairingDelegateInternal(
diff --git a/media/audio/BUILD.gn b/media/audio/BUILD.gn diff --git a/media/audio/BUILD.gn b/media/audio/BUILD.gn
index 982904023e2538bbb3039e0014542248b6f589ca..f909eeb8ac8f876897dbbd233d6fd17636607974 100644 index fa3a7b08b0ae4f09ff2aeffffc93e65181f4994b..64cf5f96e7c85e2d8969c11ccd27ba6d3154fe91 100644
--- a/media/audio/BUILD.gn --- a/media/audio/BUILD.gn
+++ b/media/audio/BUILD.gn +++ b/media/audio/BUILD.gn
@@ -186,6 +186,12 @@ source_set("audio") { @@ -184,6 +184,12 @@ source_set("audio") {
"mac/scoped_audio_unit.cc", "mac/scoped_audio_unit.cc",
"mac/scoped_audio_unit.h", "mac/scoped_audio_unit.h",
] ]
@ -307,10 +307,10 @@ index a1091960873dad8bb1b0129d20a552bf8a51739f..50bb186d1474fd4c90723ac97ac93b1d
} }
diff --git a/net/dns/dns_config_service_posix.cc b/net/dns/dns_config_service_posix.cc diff --git a/net/dns/dns_config_service_posix.cc b/net/dns/dns_config_service_posix.cc
index 31c564faeee2c082d23e2a99753f9fee592b6212..4d032d65820ebf4f3ce4d8acb84d2354b4ab8789 100644 index 6e45b8031b6373b3979f2cc8dd89ae3c3b12f535..6e1a3c7c3ddd3e7c2d2cd2b38680479e50ee5340 100644
--- a/net/dns/dns_config_service_posix.cc --- a/net/dns/dns_config_service_posix.cc
+++ b/net/dns/dns_config_service_posix.cc +++ b/net/dns/dns_config_service_posix.cc
@@ -244,6 +244,7 @@ class DnsConfigServicePosix::Watcher { @@ -245,6 +245,7 @@ class DnsConfigServicePosix::Watcher {
bool Watch() { bool Watch() {
bool success = true; bool success = true;
@ -318,7 +318,7 @@ index 31c564faeee2c082d23e2a99753f9fee592b6212..4d032d65820ebf4f3ce4d8acb84d2354
if (!config_watcher_.Watch(base::Bind(&Watcher::OnConfigChanged, if (!config_watcher_.Watch(base::Bind(&Watcher::OnConfigChanged,
base::Unretained(this)))) { base::Unretained(this)))) {
LOG(ERROR) << "DNS config watch failed to start."; LOG(ERROR) << "DNS config watch failed to start.";
@@ -265,6 +266,7 @@ class DnsConfigServicePosix::Watcher { @@ -266,6 +267,7 @@ class DnsConfigServicePosix::Watcher {
DNS_CONFIG_WATCH_MAX); DNS_CONFIG_WATCH_MAX);
} }
#endif // !defined(OS_ANDROID) && !defined(OS_IOS) #endif // !defined(OS_ANDROID) && !defined(OS_IOS)
@ -347,7 +347,7 @@ index e524aa7b851022abed1edac39e18d8d92e5349b4..718d3f963da5c1a15a1bdb0e6043f89b
} }
diff --git a/sandbox/mac/seatbelt.cc b/sandbox/mac/seatbelt.cc diff --git a/sandbox/mac/seatbelt.cc b/sandbox/mac/seatbelt.cc
index dfba0bded9e34be276ed111cbab44210a95b9875..876f96999f53b4666508f783a33cea245d1bc03e 100644 index e0c31170acd13c9997c6b1d04c6de1420feaf422..0e561f97b33380bfbe52e64c2c4a6988095e8074 100644
--- a/sandbox/mac/seatbelt.cc --- a/sandbox/mac/seatbelt.cc
+++ b/sandbox/mac/seatbelt.cc +++ b/sandbox/mac/seatbelt.cc
@@ -64,7 +64,11 @@ void Seatbelt::FreeError(char* errorbuf) { @@ -64,7 +64,11 @@ void Seatbelt::FreeError(char* errorbuf) {

View file

@ -7,10 +7,10 @@ Do not check for unique origin in CacheStorage, in Electron we may have
scripts running without an origin. scripts running without an origin.
diff --git a/content/browser/cache_storage/cache_storage.cc b/content/browser/cache_storage/cache_storage.cc diff --git a/content/browser/cache_storage/cache_storage.cc b/content/browser/cache_storage/cache_storage.cc
index 1c638d8f4b3b3be83d64febf297699161c4a3cf3..56f88da0a43d3114918cbca1f1982fff2fdc0bb3 100644 index 9e0249a6060b4d84cd8a99db2e40d96b4e715148..2e8e12de9778eeb2bc45e293b6653feeb5b6f779 100644
--- a/content/browser/cache_storage/cache_storage.cc --- a/content/browser/cache_storage/cache_storage.cc
+++ b/content/browser/cache_storage/cache_storage.cc +++ b/content/browser/cache_storage/cache_storage.cc
@@ -131,7 +131,7 @@ class CacheStorage::CacheLoader { @@ -103,7 +103,7 @@ class CacheStorage::CacheLoader {
cache_storage_(cache_storage), cache_storage_(cache_storage),
origin_(origin), origin_(origin),
owner_(owner) { owner_(owner) {

View file

@ -6,10 +6,10 @@ Subject: pass RenderProcessHost through to PlatformNotificationService
this is so Electron can identify which renderer a notification came from this is so Electron can identify which renderer a notification came from
diff --git a/content/browser/notifications/blink_notification_service_impl.cc b/content/browser/notifications/blink_notification_service_impl.cc diff --git a/content/browser/notifications/blink_notification_service_impl.cc b/content/browser/notifications/blink_notification_service_impl.cc
index 8d742bb1ed991e386073879c33142bb93d3b4e29..bdc435353751241c528b7331e37f76e90cb1becb 100644 index 7c6b38b94d714ec2a878ce3cf0448028fbf7c19b..f26dd52579544ad030b603a16ef0ff03ecebb42a 100644
--- a/content/browser/notifications/blink_notification_service_impl.cc --- a/content/browser/notifications/blink_notification_service_impl.cc
+++ b/content/browser/notifications/blink_notification_service_impl.cc +++ b/content/browser/notifications/blink_notification_service_impl.cc
@@ -48,9 +48,11 @@ BlinkNotificationServiceImpl::BlinkNotificationServiceImpl( @@ -50,9 +50,11 @@ BlinkNotificationServiceImpl::BlinkNotificationServiceImpl(
PlatformNotificationContextImpl* notification_context, PlatformNotificationContextImpl* notification_context,
BrowserContext* browser_context, BrowserContext* browser_context,
scoped_refptr<ServiceWorkerContextWrapper> service_worker_context, scoped_refptr<ServiceWorkerContextWrapper> service_worker_context,
@ -21,7 +21,7 @@ index 8d742bb1ed991e386073879c33142bb93d3b4e29..bdc435353751241c528b7331e37f76e9
browser_context_(browser_context), browser_context_(browser_context),
service_worker_context_(std::move(service_worker_context)), service_worker_context_(std::move(service_worker_context)),
origin_(origin), origin_(origin),
@@ -110,7 +112,7 @@ void BlinkNotificationServiceImpl::DisplayNonPersistentNotification( @@ -112,7 +114,7 @@ void BlinkNotificationServiceImpl::DisplayNonPersistentNotification(
notification_id, std::move(event_listener_ptr)); notification_id, std::move(event_listener_ptr));
GetNotificationService()->DisplayNotification( GetNotificationService()->DisplayNotification(
@ -31,7 +31,7 @@ index 8d742bb1ed991e386073879c33142bb93d3b4e29..bdc435353751241c528b7331e37f76e9
} }
diff --git a/content/browser/notifications/blink_notification_service_impl.h b/content/browser/notifications/blink_notification_service_impl.h diff --git a/content/browser/notifications/blink_notification_service_impl.h b/content/browser/notifications/blink_notification_service_impl.h
index 1ae12ca955024b85296449eb33f18af7f7bea37d..6d1df92efe1aec0a51cdb90a7731b187a3433154 100644 index 088637b68b1fb40fb8a32bb72781b425077e668a..ec2cce6b644e6cc8fd899a761fb55d9a01b65f98 100644
--- a/content/browser/notifications/blink_notification_service_impl.h --- a/content/browser/notifications/blink_notification_service_impl.h
+++ b/content/browser/notifications/blink_notification_service_impl.h +++ b/content/browser/notifications/blink_notification_service_impl.h
@@ -36,6 +36,7 @@ class CONTENT_EXPORT BlinkNotificationServiceImpl @@ -36,6 +36,7 @@ class CONTENT_EXPORT BlinkNotificationServiceImpl
@ -42,7 +42,7 @@ index 1ae12ca955024b85296449eb33f18af7f7bea37d..6d1df92efe1aec0a51cdb90a7731b187
const url::Origin& origin, const url::Origin& origin,
mojo::InterfaceRequest<blink::mojom::NotificationService> request); mojo::InterfaceRequest<blink::mojom::NotificationService> request);
~BlinkNotificationServiceImpl() override; ~BlinkNotificationServiceImpl() override;
@@ -104,6 +105,7 @@ class CONTENT_EXPORT BlinkNotificationServiceImpl @@ -99,6 +100,7 @@ class CONTENT_EXPORT BlinkNotificationServiceImpl
// The notification context that owns this service instance. // The notification context that owns this service instance.
PlatformNotificationContextImpl* notification_context_; PlatformNotificationContextImpl* notification_context_;
@ -51,10 +51,10 @@ index 1ae12ca955024b85296449eb33f18af7f7bea37d..6d1df92efe1aec0a51cdb90a7731b187
scoped_refptr<ServiceWorkerContextWrapper> service_worker_context_; scoped_refptr<ServiceWorkerContextWrapper> service_worker_context_;
diff --git a/content/browser/notifications/blink_notification_service_impl_unittest.cc b/content/browser/notifications/blink_notification_service_impl_unittest.cc diff --git a/content/browser/notifications/blink_notification_service_impl_unittest.cc b/content/browser/notifications/blink_notification_service_impl_unittest.cc
index 9985cfee820e4bb536813e39ebdca9b45574d6cf..e0636fde3c97bb4fce19b6042344cb432d96427c 100644 index 759e317999ec4f37f185310724374c655c2f24fe..874f6d1fb6d2bddc0e6711080adfadc3f7156b0e 100644
--- a/content/browser/notifications/blink_notification_service_impl_unittest.cc --- a/content/browser/notifications/blink_notification_service_impl_unittest.cc
+++ b/content/browser/notifications/blink_notification_service_impl_unittest.cc +++ b/content/browser/notifications/blink_notification_service_impl_unittest.cc
@@ -126,7 +126,7 @@ class BlinkNotificationServiceImplTest : public ::testing::Test { @@ -127,7 +127,7 @@ class BlinkNotificationServiceImplTest : public ::testing::Test {
notification_service_ = std::make_unique<BlinkNotificationServiceImpl>( notification_service_ = std::make_unique<BlinkNotificationServiceImpl>(
notification_context_.get(), &browser_context_, notification_context_.get(), &browser_context_,
@ -64,10 +64,10 @@ index 9985cfee820e4bb536813e39ebdca9b45574d6cf..e0636fde3c97bb4fce19b6042344cb43
mojo::MakeRequest(&notification_service_ptr_)); mojo::MakeRequest(&notification_service_ptr_));
diff --git a/content/browser/notifications/platform_notification_context_impl.cc b/content/browser/notifications/platform_notification_context_impl.cc diff --git a/content/browser/notifications/platform_notification_context_impl.cc b/content/browser/notifications/platform_notification_context_impl.cc
index 9b31e66db71ad167d593dd037bcecf4151b1452e..d01fe86c8f1ad8c9610b4b66f7b2b14bd819e359 100644 index d78bd8005178dea2dd3985527de4709e28b1ac3e..11d82930e851975997fcc69f623c4ec154f83dcc 100644
--- a/content/browser/notifications/platform_notification_context_impl.cc --- a/content/browser/notifications/platform_notification_context_impl.cc
+++ b/content/browser/notifications/platform_notification_context_impl.cc +++ b/content/browser/notifications/platform_notification_context_impl.cc
@@ -127,12 +127,13 @@ void PlatformNotificationContextImpl::ShutdownOnIO() { @@ -108,12 +108,13 @@ void PlatformNotificationContextImpl::Shutdown() {
} }
void PlatformNotificationContextImpl::CreateService( void PlatformNotificationContextImpl::CreateService(
@ -84,7 +84,7 @@ index 9b31e66db71ad167d593dd037bcecf4151b1452e..d01fe86c8f1ad8c9610b4b66f7b2b14b
void PlatformNotificationContextImpl::RemoveService( void PlatformNotificationContextImpl::RemoveService(
diff --git a/content/browser/notifications/platform_notification_context_impl.h b/content/browser/notifications/platform_notification_context_impl.h diff --git a/content/browser/notifications/platform_notification_context_impl.h b/content/browser/notifications/platform_notification_context_impl.h
index 653f487b0b0e01de7cdda8483f081550a9077e98..da9e5f53d07eaaf11525efd996be9420f0189a88 100644 index 09fd40b0a55a9799dc8018ea69a85cb25724fa63..143335b6ba90b0d0aef8aa95687db1dbcc2bdf79 100644
--- a/content/browser/notifications/platform_notification_context_impl.h --- a/content/browser/notifications/platform_notification_context_impl.h
+++ b/content/browser/notifications/platform_notification_context_impl.h +++ b/content/browser/notifications/platform_notification_context_impl.h
@@ -22,6 +22,7 @@ @@ -22,6 +22,7 @@
@ -95,10 +95,10 @@ index 653f487b0b0e01de7cdda8483f081550a9077e98..da9e5f53d07eaaf11525efd996be9420
#include "third_party/blink/public/platform/modules/notifications/notification_service.mojom.h" #include "third_party/blink/public/platform/modules/notifications/notification_service.mojom.h"
class GURL; class GURL;
@@ -65,7 +66,8 @@ class CONTENT_EXPORT PlatformNotificationContextImpl @@ -62,7 +63,8 @@ class CONTENT_EXPORT PlatformNotificationContextImpl
void Shutdown();
// Creates a BlinkNotificationServiceImpl that is owned by this context. Must // Creates a BlinkNotificationServiceImpl that is owned by this context.
// be called on the UI thread.
- void CreateService(const url::Origin& origin, - void CreateService(const url::Origin& origin,
+ void CreateService(RenderProcessHost* render_process_host, + void CreateService(RenderProcessHost* render_process_host,
+ const url::Origin& origin, + const url::Origin& origin,
@ -119,7 +119,7 @@ index 8e4df0b15aebc30c517a8c99f20201d8148777e0..ad49782df16c92a6ed0f736a5980263d
parameterized_binder_registry_.AddInterface( parameterized_binder_registry_.AddInterface(
base::BindRepeating(&BackgroundFetchServiceImpl::CreateForWorker)); base::BindRepeating(&BackgroundFetchServiceImpl::CreateForWorker));
diff --git a/content/public/browser/platform_notification_service.h b/content/public/browser/platform_notification_service.h diff --git a/content/public/browser/platform_notification_service.h b/content/public/browser/platform_notification_service.h
index 80ffd8d426c2380d57172a951a8cd15a0393bf88..0cf9ee3a44647f44bcd89351931c162370ebfe29 100644 index c7209a74a84ae4a284170ba882ee537cb732d467..4960a11bc922fd79c00bf418e1468f09f0457407 100644
--- a/content/public/browser/platform_notification_service.h --- a/content/public/browser/platform_notification_service.h
+++ b/content/public/browser/platform_notification_service.h +++ b/content/public/browser/platform_notification_service.h
@@ -27,6 +27,7 @@ struct PlatformNotificationData; @@ -27,6 +27,7 @@ struct PlatformNotificationData;
@ -139,10 +139,10 @@ index 80ffd8d426c2380d57172a951a8cd15a0393bf88..0cf9ee3a44647f44bcd89351931c1623
const std::string& notification_id, const std::string& notification_id,
const GURL& origin, const GURL& origin,
diff --git a/content/test/mock_platform_notification_service.cc b/content/test/mock_platform_notification_service.cc diff --git a/content/test/mock_platform_notification_service.cc b/content/test/mock_platform_notification_service.cc
index 0246db2c6d249843867d26d7ae6eb77f781e30a8..bc232b2684652e0febef9f3fe2f5e5e97719f06b 100644 index 7d16ee63cd349c107a0a0c35446cef557be1aed1..ac9860af1234d2c451525bbd924b79fb32f99015 100644
--- a/content/test/mock_platform_notification_service.cc --- a/content/test/mock_platform_notification_service.cc
+++ b/content/test/mock_platform_notification_service.cc +++ b/content/test/mock_platform_notification_service.cc
@@ -22,6 +22,7 @@ MockPlatformNotificationService::MockPlatformNotificationService() = default; @@ -26,6 +26,7 @@ MockPlatformNotificationService::MockPlatformNotificationService() = default;
MockPlatformNotificationService::~MockPlatformNotificationService() = default; MockPlatformNotificationService::~MockPlatformNotificationService() = default;
void MockPlatformNotificationService::DisplayNotification( void MockPlatformNotificationService::DisplayNotification(
@ -151,7 +151,7 @@ index 0246db2c6d249843867d26d7ae6eb77f781e30a8..bc232b2684652e0febef9f3fe2f5e5e9
const std::string& notification_id, const std::string& notification_id,
const GURL& origin, const GURL& origin,
diff --git a/content/test/mock_platform_notification_service.h b/content/test/mock_platform_notification_service.h diff --git a/content/test/mock_platform_notification_service.h b/content/test/mock_platform_notification_service.h
index 1d38db3e3d141b32b237c0f4ebe6abc80751225c..4f6dcf2c72493b1c29751ec5f7b16bf96946f4a5 100644 index 89aad27b34da99fc90e2d0352994eb3baa64fae4..0c8b8dbdacc83006c53fd85894d95c8fa01166d8 100644
--- a/content/test/mock_platform_notification_service.h --- a/content/test/mock_platform_notification_service.h
+++ b/content/test/mock_platform_notification_service.h +++ b/content/test/mock_platform_notification_service.h
@@ -45,6 +45,7 @@ class MockPlatformNotificationService : public PlatformNotificationService { @@ -45,6 +45,7 @@ class MockPlatformNotificationService : public PlatformNotificationService {

View file

@ -5,7 +5,7 @@ Subject: out_of_process_instance.patch
diff --git a/pdf/out_of_process_instance.cc b/pdf/out_of_process_instance.cc diff --git a/pdf/out_of_process_instance.cc b/pdf/out_of_process_instance.cc
index 7ef9271e59d7e6841150975f8b74b3565a6aaae5..23502ff1f08b7332eb32121f52f040520241b084 100644 index 25bb9fdd9b5c4cedccd401ca24d75807ddd77842..38987a29fdccbf1d4740779157b296cd4ea46cb2 100644
--- a/pdf/out_of_process_instance.cc --- a/pdf/out_of_process_instance.cc
+++ b/pdf/out_of_process_instance.cc +++ b/pdf/out_of_process_instance.cc
@@ -462,7 +462,9 @@ bool OutOfProcessInstance::Init(uint32_t argc, @@ -462,7 +462,9 @@ bool OutOfProcessInstance::Init(uint32_t argc,

View file

@ -61,10 +61,10 @@ index 83cedb4c9e1323259afd041e571240cd971e1241..3686ae2fab5f400cf119a54aea547a72
+ return PP_OK; + return PP_OK;
} }
diff --git a/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc b/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc diff --git a/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc b/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc
index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d771509ccccee 100644 index 9d249be9345202f1022f550f73cb8bdd1b327c56..e63ca22a2ebe3f380f6d06ac4f1b1eb8e5ff7e53 100644
--- a/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc --- a/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc
+++ b/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc +++ b/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc
@@ -7,9 +7,11 @@ @@ -8,9 +8,11 @@
#include "base/task/post_task.h" #include "base/task/post_task.h"
#include "base/time/time.h" #include "base/time/time.h"
#include "build/build_config.h" #include "build/build_config.h"
@ -76,7 +76,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
#include "content/public/browser/browser_context.h" #include "content/public/browser/browser_context.h"
#include "content/public/browser/browser_ppapi_host.h" #include "content/public/browser/browser_ppapi_host.h"
#include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_task_traits.h"
@@ -42,6 +44,7 @@ using content::ServiceManagerConnection; @@ -43,6 +45,7 @@ using content::ServiceManagerConnection;
namespace { namespace {
@ -84,7 +84,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
// Get the CookieSettings on the UI thread for the given render process ID. // Get the CookieSettings on the UI thread for the given render process ID.
scoped_refptr<content_settings::CookieSettings> GetCookieSettings( scoped_refptr<content_settings::CookieSettings> GetCookieSettings(
int render_process_id) { int render_process_id) {
@@ -55,6 +58,7 @@ scoped_refptr<content_settings::CookieSettings> GetCookieSettings( @@ -56,6 +59,7 @@ scoped_refptr<content_settings::CookieSettings> GetCookieSettings(
} }
return NULL; return NULL;
} }
@ -92,7 +92,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
void PepperBindConnectorRequest( void PepperBindConnectorRequest(
service_manager::mojom::ConnectorRequest connector_request) { service_manager::mojom::ConnectorRequest connector_request) {
@@ -72,7 +76,9 @@ PepperFlashBrowserHost::PepperFlashBrowserHost(BrowserPpapiHost* host, @@ -73,7 +77,9 @@ PepperFlashBrowserHost::PepperFlashBrowserHost(BrowserPpapiHost* host,
PP_Instance instance, PP_Instance instance,
PP_Resource resource) PP_Resource resource)
: ResourceHost(host->GetPpapiHost(), instance, resource), : ResourceHost(host->GetPpapiHost(), instance, resource),
@ -102,7 +102,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
delay_timer_(FROM_HERE, base::TimeDelta::FromSeconds(45), this, delay_timer_(FROM_HERE, base::TimeDelta::FromSeconds(45), this,
&PepperFlashBrowserHost::OnDelayTimerFired), &PepperFlashBrowserHost::OnDelayTimerFired),
weak_factory_(this) { weak_factory_(this) {
@@ -124,6 +130,7 @@ int32_t PepperFlashBrowserHost::OnGetLocalTimeZoneOffset( @@ -125,6 +131,7 @@ int32_t PepperFlashBrowserHost::OnGetLocalTimeZoneOffset(
int32_t PepperFlashBrowserHost::OnGetLocalDataRestrictions( int32_t PepperFlashBrowserHost::OnGetLocalDataRestrictions(
ppapi::host::HostMessageContext* context) { ppapi::host::HostMessageContext* context) {
@ -110,7 +110,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
// Getting the Flash LSO settings requires using the CookieSettings which // Getting the Flash LSO settings requires using the CookieSettings which
// belong to the profile which lives on the UI thread. We lazily initialize // belong to the profile which lives on the UI thread. We lazily initialize
// |cookie_settings_| by grabbing the reference from the UI thread and then // |cookie_settings_| by grabbing the reference from the UI thread and then
@@ -144,9 +151,11 @@ int32_t PepperFlashBrowserHost::OnGetLocalDataRestrictions( @@ -145,9 +152,11 @@ int32_t PepperFlashBrowserHost::OnGetLocalDataRestrictions(
context->MakeReplyMessageContext(), document_url, context->MakeReplyMessageContext(), document_url,
plugin_url)); plugin_url));
} }
@ -123,7 +123,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
void PepperFlashBrowserHost::GetLocalDataRestrictions( void PepperFlashBrowserHost::GetLocalDataRestrictions(
ppapi::host::ReplyMessageContext reply_context, ppapi::host::ReplyMessageContext reply_context,
const GURL& document_url, const GURL& document_url,
@@ -175,6 +184,7 @@ void PepperFlashBrowserHost::GetLocalDataRestrictions( @@ -176,6 +185,7 @@ void PepperFlashBrowserHost::GetLocalDataRestrictions(
PpapiPluginMsg_Flash_GetLocalDataRestrictionsReply( PpapiPluginMsg_Flash_GetLocalDataRestrictionsReply(
static_cast<int32_t>(restrictions))); static_cast<int32_t>(restrictions)));
} }
@ -179,7 +179,7 @@ index 154120ce5156d77dd302b85cb17e2f14fb69cc2d..5152fd847c012fc2f40017687db426fa
DISALLOW_COPY_AND_ASSIGN(PepperFlashBrowserHost); DISALLOW_COPY_AND_ASSIGN(PepperFlashBrowserHost);
diff --git a/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc b/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc diff --git a/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc b/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc
index 1644f1233e2ae3142f7c9b450b0af97ae7325abc..bac25204c3afa7b87ed9e2861f96b5168b3e8aa6 100644 index b007195efb9202f2cc8aeeb20821afbf5e8af74d..50b50a5eb48cc4efb71ffa0719bcd1f0363853e1 100644
--- a/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc --- a/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc
+++ b/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc +++ b/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc
@@ -20,6 +20,7 @@ @@ -20,6 +20,7 @@

View file

@ -9,7 +9,7 @@ majority of changes originally come from these PRs:
* https://github.com/electron/electron/pull/8596 * https://github.com/electron/electron/pull/8596
diff --git a/chrome/browser/printing/print_job_worker.cc b/chrome/browser/printing/print_job_worker.cc diff --git a/chrome/browser/printing/print_job_worker.cc b/chrome/browser/printing/print_job_worker.cc
index 961e1560aa914942c01372c354059d6d6b72c50f..aa51b2b2b0e1950f7a660d48bda5e61ecea8951c 100644 index 691c476708b6bcef9f231bc990b81dd06c4c0cc4..d124a4558affaf244ea82ab37f823db6e345d499 100644
--- a/chrome/browser/printing/print_job_worker.cc --- a/chrome/browser/printing/print_job_worker.cc
+++ b/chrome/browser/printing/print_job_worker.cc +++ b/chrome/browser/printing/print_job_worker.cc
@@ -21,12 +21,12 @@ @@ -21,12 +21,12 @@
@ -166,20 +166,20 @@ index a2569836d04ff968e690215f56f6de3b6d884874..6ddec22641b74d5484c2e0d4f62e5d71
bool printing_succeeded_; bool printing_succeeded_;
diff --git a/chrome/browser/printing/printing_message_filter.cc b/chrome/browser/printing/printing_message_filter.cc diff --git a/chrome/browser/printing/printing_message_filter.cc b/chrome/browser/printing/printing_message_filter.cc
index df6cdee86c1bc34eef013f7d36deb77a8dfa7ecb..2692f831de4699b68a5b79982d440c318e40da69 100644 index 3f6007d5c09ee9fdab534356d38d1e06e4573794..5ebb5e5255fefd2e8e611144a0745e92e069ea62 100644
--- a/chrome/browser/printing/printing_message_filter.cc --- a/chrome/browser/printing/printing_message_filter.cc
+++ b/chrome/browser/printing/printing_message_filter.cc +++ b/chrome/browser/printing/printing_message_filter.cc
@@ -22,6 +22,7 @@ @@ -22,6 +22,7 @@
#include "components/keyed_service/content/browser_context_keyed_service_shutdown_notifier_factory.h"
#include "components/printing/browser/print_manager_utils.h" #include "components/printing/browser/print_manager_utils.h"
#include "components/printing/common/print_messages.h" #include "components/printing/common/print_messages.h"
#include "content/public/browser/browser_task_traits.h"
+#include "content/public/browser/browser_context.h" +#include "content/public/browser/browser_context.h"
#include "content/public/browser/browser_task_traits.h"
#include "content/public/browser/render_frame_host.h" #include "content/public/browser/render_frame_host.h"
#include "content/public/browser/web_contents.h" #include "content/public/browser/web_contents.h"
#include "content/public/common/child_process_host.h" @@ -95,20 +96,23 @@ void PrintingMessageFilter::SetTestUpdatePrintSettingsReply(
@@ -82,20 +83,23 @@ PrintViewManager* GetPrintViewManager(int render_process_id, test_params = print_params;
}
} // namespace
-PrintingMessageFilter::PrintingMessageFilter(int render_process_id, -PrintingMessageFilter::PrintingMessageFilter(int render_process_id,
- Profile* profile) - Profile* profile)
@ -204,7 +204,7 @@ index df6cdee86c1bc34eef013f7d36deb77a8dfa7ecb..2692f831de4699b68a5b79982d440c31
} }
PrintingMessageFilter::~PrintingMessageFilter() { PrintingMessageFilter::~PrintingMessageFilter() {
@@ -131,11 +135,13 @@ bool PrintingMessageFilter::OnMessageReceived(const IPC::Message& message) { @@ -144,11 +148,13 @@ bool PrintingMessageFilter::OnMessageReceived(const IPC::Message& message) {
void PrintingMessageFilter::OnGetDefaultPrintSettings(IPC::Message* reply_msg) { void PrintingMessageFilter::OnGetDefaultPrintSettings(IPC::Message* reply_msg) {
DCHECK_CURRENTLY_ON(BrowserThread::IO); DCHECK_CURRENTLY_ON(BrowserThread::IO);
scoped_refptr<PrinterQuery> printer_query; scoped_refptr<PrinterQuery> printer_query;
@ -218,7 +218,7 @@ index df6cdee86c1bc34eef013f7d36deb77a8dfa7ecb..2692f831de4699b68a5b79982d440c31
printer_query = queue_->PopPrinterQuery(0); printer_query = queue_->PopPrinterQuery(0);
if (!printer_query.get()) { if (!printer_query.get()) {
printer_query = printer_query =
@@ -221,11 +227,13 @@ void PrintingMessageFilter::OnUpdatePrintSettings(int document_cookie, @@ -234,11 +240,13 @@ void PrintingMessageFilter::OnUpdatePrintSettings(int document_cookie,
base::Value job_settings, base::Value job_settings,
IPC::Message* reply_msg) { IPC::Message* reply_msg) {
scoped_refptr<PrinterQuery> printer_query; scoped_refptr<PrinterQuery> printer_query;
@ -232,7 +232,7 @@ index df6cdee86c1bc34eef013f7d36deb77a8dfa7ecb..2692f831de4699b68a5b79982d440c31
printer_query = queue_->PopPrinterQuery(document_cookie); printer_query = queue_->PopPrinterQuery(document_cookie);
if (!printer_query.get()) { if (!printer_query.get()) {
printer_query = queue_->CreatePrinterQuery( printer_query = queue_->CreatePrinterQuery(
@@ -284,7 +292,7 @@ void PrintingMessageFilter::OnUpdatePrintSettingsReply( @@ -302,7 +310,7 @@ void PrintingMessageFilter::OnUpdatePrintSettingsReply(
#if BUILDFLAG(ENABLE_PRINT_PREVIEW) #if BUILDFLAG(ENABLE_PRINT_PREVIEW)
void PrintingMessageFilter::OnCheckForCancel(const PrintHostMsg_PreviewIds& ids, void PrintingMessageFilter::OnCheckForCancel(const PrintHostMsg_PreviewIds& ids,
bool* cancel) { bool* cancel) {
@ -242,11 +242,11 @@ index df6cdee86c1bc34eef013f7d36deb77a8dfa7ecb..2692f831de4699b68a5b79982d440c31
#endif #endif
diff --git a/chrome/browser/printing/printing_message_filter.h b/chrome/browser/printing/printing_message_filter.h diff --git a/chrome/browser/printing/printing_message_filter.h b/chrome/browser/printing/printing_message_filter.h
index c4d586e62f14c3002993a2dbc7e478027d8f9b02..85d5fc55e93bea0080cd03316f29856bcaf27b59 100644 index 4607c9af91bb604bb4753eb54c2013e58698ff30..58cbf62a1bc1e18327e987cd55524848d2eca05e 100644
--- a/chrome/browser/printing/printing_message_filter.h --- a/chrome/browser/printing/printing_message_filter.h
+++ b/chrome/browser/printing/printing_message_filter.h +++ b/chrome/browser/printing/printing_message_filter.h
@@ -23,6 +23,10 @@ struct PrintHostMsg_PreviewIds; @@ -24,6 +24,10 @@ struct PrintHostMsg_ScriptedPrint_Params;
struct PrintHostMsg_ScriptedPrint_Params; struct PrintMsg_Print_Params;
class Profile; class Profile;
+namespace content { +namespace content {
@ -256,10 +256,10 @@ index c4d586e62f14c3002993a2dbc7e478027d8f9b02..85d5fc55e93bea0080cd03316f29856b
namespace printing { namespace printing {
class PrintQueriesQueue; class PrintQueriesQueue;
@@ -32,7 +36,8 @@ class PrinterQuery; @@ -37,7 +41,8 @@ class PrintingMessageFilter : public content::BrowserMessageFilter {
// renderer process on the IPC thread. static void SetTestUpdatePrintSettingsReply(
class PrintingMessageFilter : public content::BrowserMessageFilter { const PrintMsg_Print_Params& print_params);
public:
- PrintingMessageFilter(int render_process_id, Profile* profile); - PrintingMessageFilter(int render_process_id, Profile* profile);
+ PrintingMessageFilter(int render_process_id, + PrintingMessageFilter(int render_process_id,
+ content::BrowserContext* browser_context); + content::BrowserContext* browser_context);
@ -283,7 +283,7 @@ index 1802034a6e15a6ad8b0d9591cfb79ba5873dc982..a827091facdb4f6b1d74ce826c3492ce
// Like PrintMsg_PrintPages, but using the print preview document's frame/node. // Like PrintMsg_PrintPages, but using the print preview document's frame/node.
IPC_MESSAGE_ROUTED0(PrintMsg_PrintForSystemDialog) IPC_MESSAGE_ROUTED0(PrintMsg_PrintForSystemDialog)
diff --git a/components/printing/renderer/print_render_frame_helper.cc b/components/printing/renderer/print_render_frame_helper.cc diff --git a/components/printing/renderer/print_render_frame_helper.cc b/components/printing/renderer/print_render_frame_helper.cc
index d51abda693de7fc701928e29fe35154169f41651..051958321c9b95d5951f76ee822dd67a17d18324 100644 index 560a6e4d12c90958c3dbe858c446e50f8ff0d020..7c4be124adeaf0535191da9ff339e9bf33b378a0 100644
--- a/components/printing/renderer/print_render_frame_helper.cc --- a/components/printing/renderer/print_render_frame_helper.cc
+++ b/components/printing/renderer/print_render_frame_helper.cc +++ b/components/printing/renderer/print_render_frame_helper.cc
@@ -1109,7 +1109,9 @@ void PrintRenderFrameHelper::ScriptedPrint(bool user_initiated) { @@ -1109,7 +1109,9 @@ void PrintRenderFrameHelper::ScriptedPrint(bool user_initiated) {
@ -438,10 +438,10 @@ index d51abda693de7fc701928e29fe35154169f41651..051958321c9b95d5951f76ee822dd67a
Send(new PrintHostMsg_ShowInvalidPrinterSettingsError(routing_id())); Send(new PrintHostMsg_ShowInvalidPrinterSettingsError(routing_id()));
return false; return false;
diff --git a/components/printing/renderer/print_render_frame_helper.h b/components/printing/renderer/print_render_frame_helper.h diff --git a/components/printing/renderer/print_render_frame_helper.h b/components/printing/renderer/print_render_frame_helper.h
index 34690801675c8b049d195e37f4fa400c6b30a644..2587534c550612809a4235f4ff92cc6fa962765c 100644 index c4effb05d16cd67acf3d8140d25eb33fb4814dc3..0660062708438a2de7132b1a39dcbac85f8b8cbf 100644
--- a/components/printing/renderer/print_render_frame_helper.h --- a/components/printing/renderer/print_render_frame_helper.h
+++ b/components/printing/renderer/print_render_frame_helper.h +++ b/components/printing/renderer/print_render_frame_helper.h
@@ -192,7 +192,9 @@ class PrintRenderFrameHelper @@ -193,7 +193,9 @@ class PrintRenderFrameHelper
bool OnMessageReceived(const IPC::Message& message) override; bool OnMessageReceived(const IPC::Message& message) override;
// Message handlers --------------------------------------------------------- // Message handlers ---------------------------------------------------------
@ -452,7 +452,7 @@ index 34690801675c8b049d195e37f4fa400c6b30a644..2587534c550612809a4235f4ff92cc6f
void OnPrintForSystemDialog(); void OnPrintForSystemDialog();
#if BUILDFLAG(ENABLE_PRINT_PREVIEW) #if BUILDFLAG(ENABLE_PRINT_PREVIEW)
void OnInitiatePrintPreview(bool has_selection); void OnInitiatePrintPreview(bool has_selection);
@@ -243,7 +245,10 @@ class PrintRenderFrameHelper @@ -244,7 +246,10 @@ class PrintRenderFrameHelper
// WARNING: |this| may be gone after this method returns. // WARNING: |this| may be gone after this method returns.
void Print(blink::WebLocalFrame* frame, void Print(blink::WebLocalFrame* frame,
const blink::WebNode& node, const blink::WebNode& node,
@ -464,7 +464,7 @@ index 34690801675c8b049d195e37f4fa400c6b30a644..2587534c550612809a4235f4ff92cc6f
// Notification when printing is done - signal tear-down/free resources. // Notification when printing is done - signal tear-down/free resources.
void DidFinishPrinting(PrintingResult result); void DidFinishPrinting(PrintingResult result);
@@ -252,12 +257,14 @@ class PrintRenderFrameHelper @@ -253,12 +258,14 @@ class PrintRenderFrameHelper
// Initialize print page settings with default settings. // Initialize print page settings with default settings.
// Used only for native printing workflow. // Used only for native printing workflow.

View file

@ -67,10 +67,10 @@ index f1e287553244cfd1054c4949ffbb1acdaccbe1e2..94cbca68cedc314d55993375bc48159c
} }
#endif #endif
diff --git a/chrome/browser/net/proxy_config_monitor.h b/chrome/browser/net/proxy_config_monitor.h diff --git a/chrome/browser/net/proxy_config_monitor.h b/chrome/browser/net/proxy_config_monitor.h
index c6c1fa51cbf35e8183a34848f79ed8dcbc97e0e2..c511bf188b0f24a9bf6c8729d9188c9bf342cf6a 100644 index 0f20947c7819c3be2086a69f5997412652a99915..a88a1e001a4c1b8d7bafdac74fb060a1ee30361d 100644
--- a/chrome/browser/net/proxy_config_monitor.h --- a/chrome/browser/net/proxy_config_monitor.h
+++ b/chrome/browser/net/proxy_config_monitor.h +++ b/chrome/browser/net/proxy_config_monitor.h
@@ -38,11 +38,12 @@ class ProxyConfigMonitor : public net::ProxyConfigService::Observer, @@ -40,11 +40,12 @@ class ProxyConfigMonitor : public net::ProxyConfigService::Observer,
{ {
public: public:
@ -84,7 +84,7 @@ index c6c1fa51cbf35e8183a34848f79ed8dcbc97e0e2..c511bf188b0f24a9bf6c8729d9188c9b
// Creates a ProxyConfigMonitor that gets proxy settings from the // Creates a ProxyConfigMonitor that gets proxy settings from the
// |local_state|, for use with NetworkContexts not // |local_state|, for use with NetworkContexts not
// associated with a profile. Must be destroyed before |local_state|. // associated with a profile. Must be destroyed before |local_state|.
@@ -89,7 +90,6 @@ class ProxyConfigMonitor : public net::ProxyConfigService::Observer, @@ -91,7 +92,6 @@ class ProxyConfigMonitor : public net::ProxyConfigService::Observer,
#if BUILDFLAG(ENABLE_EXTENSIONS) #if BUILDFLAG(ENABLE_EXTENSIONS)
mojo::BindingSet<network::mojom::ProxyErrorClient> error_binding_set_; mojo::BindingSet<network::mojom::ProxyErrorClient> error_binding_set_;

View file

@ -5,10 +5,10 @@ Subject: render_widget_host_view_base.patch
diff --git a/content/browser/renderer_host/render_widget_host_view_base.cc b/content/browser/renderer_host/render_widget_host_view_base.cc diff --git a/content/browser/renderer_host/render_widget_host_view_base.cc b/content/browser/renderer_host/render_widget_host_view_base.cc
index 7e2761a4afb131982ad436388e73d9bf69618627..f6f72559a711e65c48f555b849b78966774e606f 100644 index 68d55c2f9e2da0a987cd0629762bf2dfa32b83f5..0ce79827459e67c65da2bac738663610d278b56a 100644
--- a/content/browser/renderer_host/render_widget_host_view_base.cc --- a/content/browser/renderer_host/render_widget_host_view_base.cc
+++ b/content/browser/renderer_host/render_widget_host_view_base.cc +++ b/content/browser/renderer_host/render_widget_host_view_base.cc
@@ -670,6 +670,15 @@ viz::FrameSinkId RenderWidgetHostViewBase::FrameSinkIdAtPoint( @@ -652,6 +652,15 @@ viz::FrameSinkId RenderWidgetHostViewBase::FrameSinkIdAtPoint(
return frame_sink_id.is_valid() ? frame_sink_id : GetFrameSinkId(); return frame_sink_id.is_valid() ? frame_sink_id : GetFrameSinkId();
} }
@ -25,7 +25,7 @@ index 7e2761a4afb131982ad436388e73d9bf69618627..f6f72559a711e65c48f555b849b78966
const blink::WebMouseEvent& event, const blink::WebMouseEvent& event,
const ui::LatencyInfo& latency) { const ui::LatencyInfo& latency) {
diff --git a/content/browser/renderer_host/render_widget_host_view_base.h b/content/browser/renderer_host/render_widget_host_view_base.h diff --git a/content/browser/renderer_host/render_widget_host_view_base.h b/content/browser/renderer_host/render_widget_host_view_base.h
index b7febba61de2018127b365ae9d707030406098e5..c07184c23b9e8f89919e623338db4bfa86a0f6ee 100644 index 148c980a6f6062f2191658055a8294d3b93eb517..bb58cfc26558e39fe771a6d0c30c88bdbd36da49 100644
--- a/content/browser/renderer_host/render_widget_host_view_base.h --- a/content/browser/renderer_host/render_widget_host_view_base.h
+++ b/content/browser/renderer_host/render_widget_host_view_base.h +++ b/content/browser/renderer_host/render_widget_host_view_base.h
@@ -23,8 +23,10 @@ @@ -23,8 +23,10 @@
@ -62,7 +62,7 @@ index b7febba61de2018127b365ae9d707030406098e5..c07184c23b9e8f89919e623338db4bfa
// This only needs to be overridden by RenderWidgetHostViewBase subclasses // This only needs to be overridden by RenderWidgetHostViewBase subclasses
// that handle content embedded within other RenderWidgetHostViews. // that handle content embedded within other RenderWidgetHostViews.
gfx::PointF TransformPointToRootCoordSpaceF( gfx::PointF TransformPointToRootCoordSpaceF(
@@ -365,6 +372,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase @@ -352,6 +359,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
virtual void ProcessGestureEvent(const blink::WebGestureEvent& event, virtual void ProcessGestureEvent(const blink::WebGestureEvent& event,
const ui::LatencyInfo& latency); const ui::LatencyInfo& latency);

View file

@ -5,7 +5,7 @@ Subject: render_widget_host_view_mac.patch
diff --git a/content/browser/renderer_host/render_widget_host_view_cocoa.mm b/content/browser/renderer_host/render_widget_host_view_cocoa.mm diff --git a/content/browser/renderer_host/render_widget_host_view_cocoa.mm b/content/browser/renderer_host/render_widget_host_view_cocoa.mm
index 89939596b253bbd55b117328fd822b087607d8e3..aba0a33ec9a7f87a1f7f57ffed4c697d8d81a285 100644 index ed18a0a46c22620850d4384e6bb82dba80a3b6d8..c940999eeec8fcf2a2a4514d0edd67f844979b41 100644
--- a/content/browser/renderer_host/render_widget_host_view_cocoa.mm --- a/content/browser/renderer_host/render_widget_host_view_cocoa.mm
+++ b/content/browser/renderer_host/render_widget_host_view_cocoa.mm +++ b/content/browser/renderer_host/render_widget_host_view_cocoa.mm
@@ -142,6 +142,11 @@ void ExtractUnderlines(NSAttributedString* string, @@ -142,6 +142,11 @@ void ExtractUnderlines(NSAttributedString* string,
@ -20,7 +20,7 @@ index 89939596b253bbd55b117328fd822b087607d8e3..aba0a33ec9a7f87a1f7f57ffed4c697d
// These are not documented, so use only after checking -respondsToSelector:. // These are not documented, so use only after checking -respondsToSelector:.
@interface NSApplication (UndocumentedSpeechMethods) @interface NSApplication (UndocumentedSpeechMethods)
- (void)speakString:(NSString*)string; - (void)speakString:(NSString*)string;
@@ -403,6 +408,9 @@ void ExtractUnderlines(NSAttributedString* string, @@ -403,6 +408,9 @@ - (BOOL)acceptsMouseEventsWhenInactive {
} }
- (BOOL)acceptsFirstMouse:(NSEvent*)theEvent { - (BOOL)acceptsFirstMouse:(NSEvent*)theEvent {
@ -30,7 +30,7 @@ index 89939596b253bbd55b117328fd822b087607d8e3..aba0a33ec9a7f87a1f7f57ffed4c697d
return [self acceptsMouseEventsWhenInactive]; return [self acceptsMouseEventsWhenInactive];
} }
@@ -765,6 +773,10 @@ void ExtractUnderlines(NSAttributedString* string, @@ -765,6 +773,10 @@ - (void)keyEvent:(NSEvent*)theEvent wasKeyEquivalent:(BOOL)equiv {
eventType == NSKeyDown && eventType == NSKeyDown &&
!(modifierFlags & NSCommandKeyMask); !(modifierFlags & NSCommandKeyMask);
@ -41,7 +41,7 @@ index 89939596b253bbd55b117328fd822b087607d8e3..aba0a33ec9a7f87a1f7f57ffed4c697d
// We only handle key down events and just simply forward other events. // We only handle key down events and just simply forward other events.
if (eventType != NSKeyDown) { if (eventType != NSKeyDown) {
clientHelper_->ForwardKeyboardEvent(event, latency_info); clientHelper_->ForwardKeyboardEvent(event, latency_info);
@@ -1513,9 +1525,11 @@ void ExtractUnderlines(NSAttributedString* string, @@ -1513,9 +1525,11 @@ - (id)accessibilityFocusedUIElement {
// Since this implementation doesn't have to wait any IPC calls, this doesn't // Since this implementation doesn't have to wait any IPC calls, this doesn't
// make any key-typing jank. --hbono 7/23/09 // make any key-typing jank. --hbono 7/23/09
// //
@ -53,7 +53,7 @@ index 89939596b253bbd55b117328fd822b087607d8e3..aba0a33ec9a7f87a1f7f57ffed4c697d
- (NSArray*)validAttributesForMarkedText { - (NSArray*)validAttributesForMarkedText {
// This code is just copied from WebKit except renaming variables. // This code is just copied from WebKit except renaming variables.
@@ -1524,7 +1538,10 @@ extern NSString* NSTextInputReplacementRangeAttributeName; @@ -1524,7 +1538,10 @@ - (NSArray*)validAttributesForMarkedText {
initWithObjects:NSUnderlineStyleAttributeName, initWithObjects:NSUnderlineStyleAttributeName,
NSUnderlineColorAttributeName, NSUnderlineColorAttributeName,
NSMarkedClauseSegmentAttributeName, NSMarkedClauseSegmentAttributeName,

View file

@ -52,10 +52,10 @@ Some alternatives to this patch:
None of these options seems like a substantial maintainability win over this patch to me (@nornagon). None of these options seems like a substantial maintainability win over this patch to me (@nornagon).
diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
index 11e4c4c9fd436fd57501e0e2c71e5fe6f66f4204..fcc072d6d9347feffd49450eb3d3172882a80289 100644 index ececd22ccf241a21666b1964c4bce053e1ab504a..2b1b875437102c9fd2573df3ad0688a40a69d499 100644
--- a/chrome/BUILD.gn --- a/chrome/BUILD.gn
+++ b/chrome/BUILD.gn +++ b/chrome/BUILD.gn
@@ -1642,7 +1642,7 @@ if (is_chrome_branded && !is_android) { @@ -1647,7 +1647,7 @@ if (is_chrome_branded && !is_android) {
} }
} }
@ -64,7 +64,7 @@ index 11e4c4c9fd436fd57501e0e2c71e5fe6f66f4204..fcc072d6d9347feffd49450eb3d31728
chrome_paks("packed_resources") { chrome_paks("packed_resources") {
if (is_mac) { if (is_mac) {
output_dir = "$root_gen_dir/repack" output_dir = "$root_gen_dir/repack"
@@ -1666,6 +1666,12 @@ if (!is_android) { @@ -1671,6 +1671,12 @@ if (!is_android) {
} }
} }

View file

@ -6,7 +6,7 @@ Subject: Revert "Build swiftshader for ARM32."
This reverts commit e7caa7ca82fc015675aea8cecf178c83a94ab3a7. This reverts commit e7caa7ca82fc015675aea8cecf178c83a94ab3a7.
diff --git a/ui/gl/BUILD.gn b/ui/gl/BUILD.gn diff --git a/ui/gl/BUILD.gn b/ui/gl/BUILD.gn
index 77750dc5e9f24347bba17811da7d86c9ef28e99c..07fb1573d21cf84dfd295927104fb82a254664a8 100644 index 2b80ce0756be0f8153edebb409ac3981a0cefa9a..f04dc7baf9186194936cbb7c2df40ed709a9bc6f 100644
--- a/ui/gl/BUILD.gn --- a/ui/gl/BUILD.gn
+++ b/ui/gl/BUILD.gn +++ b/ui/gl/BUILD.gn
@@ -15,8 +15,8 @@ declare_args() { @@ -15,8 +15,8 @@ declare_args() {

View file

@ -6,10 +6,10 @@ Subject: scroll_bounce_flag.patch
Patch to make scrollBounce option work. Patch to make scrollBounce option work.
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
index f376c3cbbce159c568a8c0ef207ac537e6810743..afff6e117f1447e792652df1cb37fbdc910c4738 100644 index 44d963793f143530704a0a06273e51d7c68766cc..5cea319fea51e27f6bd5be7221bafb186b2a3973 100644
--- a/content/renderer/render_thread_impl.cc --- a/content/renderer/render_thread_impl.cc
+++ b/content/renderer/render_thread_impl.cc +++ b/content/renderer/render_thread_impl.cc
@@ -1539,7 +1539,7 @@ bool RenderThreadImpl::IsGpuMemoryBufferCompositorResourcesEnabled() { @@ -1535,7 +1535,7 @@ bool RenderThreadImpl::IsGpuMemoryBufferCompositorResourcesEnabled() {
} }
bool RenderThreadImpl::IsElasticOverscrollEnabled() { bool RenderThreadImpl::IsElasticOverscrollEnabled() {

View file

@ -6,10 +6,10 @@ Subject: ssl_security_state_tab_helper.patch
Allows populating security tab info for devtools in Electron. Allows populating security tab info for devtools in Electron.
diff --git a/chrome/browser/ssl/security_state_tab_helper.cc b/chrome/browser/ssl/security_state_tab_helper.cc diff --git a/chrome/browser/ssl/security_state_tab_helper.cc b/chrome/browser/ssl/security_state_tab_helper.cc
index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae5747fc994f 100644 index d27ed1f62bfa6f550f88acd97638fc51f666e38c..186bc75254e81309a8cd33364916b4f8db3d5937 100644
--- a/chrome/browser/ssl/security_state_tab_helper.cc --- a/chrome/browser/ssl/security_state_tab_helper.cc
+++ b/chrome/browser/ssl/security_state_tab_helper.cc +++ b/chrome/browser/ssl/security_state_tab_helper.cc
@@ -12,16 +12,20 @@ @@ -12,10 +12,12 @@
#include "base/strings/pattern.h" #include "base/strings/pattern.h"
#include "base/strings/string_util.h" #include "base/strings/string_util.h"
#include "build/build_config.h" #include "build/build_config.h"
@ -22,15 +22,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
#include "chrome/common/chrome_switches.h" #include "chrome/common/chrome_switches.h"
#include "chrome/common/pref_names.h" #include "chrome/common/pref_names.h"
#include "chrome/common/secure_origin_whitelist.h" #include "chrome/common/secure_origin_whitelist.h"
#include "components/omnibox/browser/omnibox_field_trial.h" @@ -41,7 +43,7 @@
#include "components/prefs/pref_service.h"
+#if 0
#include "components/safe_browsing/features.h"
+#endif
#include "components/security_state/content/content_utils.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/navigation_entry.h"
@@ -42,7 +46,7 @@
#include "chrome/browser/chromeos/policy/policy_cert_service_factory.h" #include "chrome/browser/chromeos/policy/policy_cert_service_factory.h"
#endif // defined(OS_CHROMEOS) #endif // defined(OS_CHROMEOS)
@ -39,7 +31,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
#include "chrome/browser/safe_browsing/chrome_password_protection_service.h" #include "chrome/browser/safe_browsing/chrome_password_protection_service.h"
#endif #endif
@@ -78,7 +82,9 @@ bool IsOriginSecureWithWhitelist( @@ -77,7 +79,9 @@ bool IsOriginSecureWithWhitelist(
} // namespace } // namespace
@ -49,7 +41,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
SecurityStateTabHelper::SecurityStateTabHelper( SecurityStateTabHelper::SecurityStateTabHelper(
content::WebContents* web_contents) content::WebContents* web_contents)
@@ -138,6 +144,7 @@ void SecurityStateTabHelper::DidFinishNavigation( @@ -137,6 +141,7 @@ void SecurityStateTabHelper::DidFinishNavigation(
UMA_HISTOGRAM_BOOLEAN("interstitial.ssl.visited_site_after_warning", true); UMA_HISTOGRAM_BOOLEAN("interstitial.ssl.visited_site_after_warning", true);
} }
@ -57,7 +49,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
// Security indicator UI study (https://crbug.com/803501): Show a message in // Security indicator UI study (https://crbug.com/803501): Show a message in
// the console to reduce developer confusion about the experimental UI // the console to reduce developer confusion about the experimental UI
// treatments for HTTPS pages with EV certificates. // treatments for HTTPS pages with EV certificates.
@@ -165,6 +172,7 @@ void SecurityStateTabHelper::DidFinishNavigation( @@ -164,6 +169,7 @@ void SecurityStateTabHelper::DidFinishNavigation(
"Validation is still valid."); "Validation is still valid.");
} }
} }
@ -65,7 +57,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
} }
void SecurityStateTabHelper::DidChangeVisibleSecurityState() { void SecurityStateTabHelper::DidChangeVisibleSecurityState() {
@@ -190,6 +198,7 @@ SecurityStateTabHelper::GetMaliciousContentStatus() const { @@ -189,6 +195,7 @@ SecurityStateTabHelper::GetMaliciousContentStatus() const {
web_contents()->GetController().GetVisibleEntry(); web_contents()->GetController().GetVisibleEntry();
if (!entry) if (!entry)
return security_state::MALICIOUS_CONTENT_STATUS_NONE; return security_state::MALICIOUS_CONTENT_STATUS_NONE;
@ -73,7 +65,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
safe_browsing::SafeBrowsingService* sb_service = safe_browsing::SafeBrowsingService* sb_service =
g_browser_process->safe_browsing_service(); g_browser_process->safe_browsing_service();
if (!sb_service) if (!sb_service)
@@ -259,6 +268,7 @@ SecurityStateTabHelper::GetMaliciousContentStatus() const { @@ -256,6 +263,7 @@ SecurityStateTabHelper::GetMaliciousContentStatus() const {
break; break;
} }
} }
@ -81,7 +73,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
return security_state::MALICIOUS_CONTENT_STATUS_NONE; return security_state::MALICIOUS_CONTENT_STATUS_NONE;
} }
@@ -277,15 +287,19 @@ std::vector<std::string> SecurityStateTabHelper::GetSecureOriginsAndPatterns() @@ -274,15 +282,19 @@ std::vector<std::string> SecurityStateTabHelper::GetSecureOriginsAndPatterns()
const { const {
const base::CommandLine& command_line = const base::CommandLine& command_line =
*base::CommandLine::ForCurrentProcess(); *base::CommandLine::ForCurrentProcess();

View file

@ -22,10 +22,10 @@ However, the patch would need to be reviewed by the security team, as it
does touch a security-sensitive class. does touch a security-sensitive class.
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
index 04f816a43b87609d31b89e147d6357dd66480200..77f9ff3979592f711a2f8b8cea5df31376d7f31d 100644 index c6feebd62b98c18d260088b5a60fc59b2c2e0d1a..17edbd3a08010f257152e857a178af83c9aaf3d6 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc --- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -470,6 +470,10 @@ class RendererSandboxedProcessLauncherDelegate @@ -423,6 +423,10 @@ class RendererSandboxedProcessLauncherDelegate
: public SandboxedProcessLauncherDelegate { : public SandboxedProcessLauncherDelegate {
public: public:
RendererSandboxedProcessLauncherDelegate() {} RendererSandboxedProcessLauncherDelegate() {}
@ -36,7 +36,7 @@ index 04f816a43b87609d31b89e147d6357dd66480200..77f9ff3979592f711a2f8b8cea5df313
~RendererSandboxedProcessLauncherDelegate() override {} ~RendererSandboxedProcessLauncherDelegate() override {}
@@ -489,6 +493,9 @@ class RendererSandboxedProcessLauncherDelegate @@ -442,6 +446,9 @@ class RendererSandboxedProcessLauncherDelegate
#if BUILDFLAG(USE_ZYGOTE_HANDLE) #if BUILDFLAG(USE_ZYGOTE_HANDLE)
service_manager::ZygoteHandle GetZygote() override { service_manager::ZygoteHandle GetZygote() override {
@ -46,7 +46,7 @@ index 04f816a43b87609d31b89e147d6357dd66480200..77f9ff3979592f711a2f8b8cea5df313
const base::CommandLine& browser_command_line = const base::CommandLine& browser_command_line =
*base::CommandLine::ForCurrentProcess(); *base::CommandLine::ForCurrentProcess();
base::CommandLine::StringType renderer_prefix = base::CommandLine::StringType renderer_prefix =
@@ -502,6 +509,11 @@ class RendererSandboxedProcessLauncherDelegate @@ -455,6 +462,11 @@ class RendererSandboxedProcessLauncherDelegate
service_manager::SandboxType GetSandboxType() override { service_manager::SandboxType GetSandboxType() override {
return service_manager::SANDBOX_TYPE_RENDERER; return service_manager::SANDBOX_TYPE_RENDERER;
} }
@ -58,7 +58,7 @@ index 04f816a43b87609d31b89e147d6357dd66480200..77f9ff3979592f711a2f8b8cea5df313
}; };
const char kSessionStorageHolderKey[] = "kSessionStorageHolderKey"; const char kSessionStorageHolderKey[] = "kSessionStorageHolderKey";
@@ -1857,11 +1869,18 @@ bool RenderProcessHostImpl::Init() { @@ -1748,11 +1760,18 @@ bool RenderProcessHostImpl::Init() {
cmd_line->PrependWrapper(renderer_prefix); cmd_line->PrependWrapper(renderer_prefix);
AppendRendererCommandLine(cmd_line.get()); AppendRendererCommandLine(cmd_line.get());

Some files were not shown because too many files have changed in this diff Show more