chore: bump chromium to 131.0.6776.0 (main) (#44137)

* chore: bump chromium in DEPS to 131.0.6763.0

* chore: bump chromium in DEPS to 131.0.6764.0

* update patches

* chore: bump chromium in DEPS to 131.0.6766.0

* chore: update patches

* Use PathInfo in FileSystemAccess code

Refs 5872329

* Modernize image utilities.

Refs 5905226

* [DevTools] move feature flags to the devtools directory

Refs 5913878

* chore: bump chromium in DEPS to 131.0.6768.0

* chore: update patches

* Remove experimental credshelper flags

Refs 4017a6c8b4

* Change gfx::[PNG|JPEG]Codec::Decode to return a SkBitmap

Refs 5917286
Refs 5905621

* chore: script/gen-libc++-filenames.js

* chore: bump chromium in DEPS to 131.0.6770.0

* chore: update patches

* chore: bump chromium in DEPS to 131.0.6772.0

* chore: update patches

* [UI] Add alias for mojo version of `MenuSourceType`

Refs 5803393

* Update Background Color for Task Manager Refresh

Refs 5875259

* chore: bump chromium in DEPS to 131.0.6774.0

* chore: bump chromium in DEPS to 131.0.6776.0

* chore: update patches

* chore: update filenames.libcxx.gni

* esm: remove --no-import-harmony-assertions

https://github.com/nodejs/node/pull/54890

* 5507047: [import-attributes] Remove support for import assertions

 | 5507047

* fixup: Change gfx::[PNG|JPEG]Codec::Decode to return a SkBitmap

* chore: bump chromium in DEPS to 131.0.6778.0

* Revert "chore: bump chromium in DEPS to 131.0.6778.0"

This reverts commit fb9092fc51700651aa4a245931f71ec1ca55a274.

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Jeremy Rose <nornagon@electronjs.org>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
This commit is contained in:
electron-roller[bot] 2024-10-15 11:51:11 -04:00 committed by GitHub
parent 72802c374b
commit 36b7cf341e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
59 changed files with 395 additions and 325 deletions

View file

@ -187,8 +187,8 @@ jobs:
HELPER=$(node -p "require('./src/utils/reclient.js').helperPath({})") HELPER=$(node -p "require('./src/utils/reclient.js').helperPath({})")
$HELPER login $HELPER login
echo 'RBE_service='`node -e "console.log(require('./src/utils/reclient.js').serviceAddress)"` >> $GITHUB_ENV echo 'RBE_service='`node -e "console.log(require('./src/utils/reclient.js').serviceAddress)"` >> $GITHUB_ENV
echo 'RBE_experimental_credentials_helper='`node -e "console.log(require('./src/utils/reclient.js').helperPath({}))"` >> $GITHUB_ENV echo 'RBE_credentials_helper='`node -e "console.log(require('./src/utils/reclient.js').helperPath({}))"` >> $GITHUB_ENV
echo 'RBE_experimental_credentials_helper_args=print' >> $GITHUB_ENV echo 'RBE_credentials_helper_args=print' >> $GITHUB_ENV
- name: Free up space (macOS) - name: Free up space (macOS)
if: ${{ inputs.target-platform == 'macos' }} if: ${{ inputs.target-platform == 'macos' }}
uses: ./src/electron/.github/actions/free-space-macos uses: ./src/electron/.github/actions/free-space-macos

2
DEPS
View file

@ -2,7 +2,7 @@ gclient_gn_args_from = 'src'
vars = { vars = {
'chromium_version': 'chromium_version':
'131.0.6762.0', '131.0.6776.0',
'node_version': 'node_version':
'v20.18.0', 'v20.18.0',
'nan_version': 'nan_version':

View file

@ -121,9 +121,9 @@ for:
- ps: >- - ps: >-
$env:RBE_service = node -e "console.log(require('./src/utils/reclient.js').serviceAddress)" $env:RBE_service = node -e "console.log(require('./src/utils/reclient.js').serviceAddress)"
- ps: >- - ps: >-
$env:RBE_experimental_credentials_helper = $env:RECLIENT_HELPER $env:RBE_credentials_helper = $env:RECLIENT_HELPER
- ps: >- - ps: >-
$env:RBE_experimental_credentials_helper_args = "print" $env:RBE_credentials_helper_args = "print"
- ps: >- - ps: >-
if ($env:ELECTRON_RBE_JWT -eq '') { if ($env:ELECTRON_RBE_JWT -eq '') {
$env:RBE_fail_early_min_action_count = "0" $env:RBE_fail_early_min_action_count = "0"

View file

@ -116,9 +116,9 @@ for:
- ps: >- - ps: >-
$env:RBE_service = node -e "console.log(require('./src/utils/reclient.js').serviceAddress)" $env:RBE_service = node -e "console.log(require('./src/utils/reclient.js').serviceAddress)"
- ps: >- - ps: >-
$env:RBE_experimental_credentials_helper = $env:RECLIENT_HELPER $env:RBE_credentials_helper = $env:RECLIENT_HELPER
- ps: >- - ps: >-
$env:RBE_experimental_credentials_helper_args = "print" $env:RBE_credentials_helper_args = "print"
- ps: >- - ps: >-
if ($env:ELECTRON_RBE_JWT -eq '') { if ($env:ELECTRON_RBE_JWT -eq '') {
$env:RBE_fail_early_min_action_count = "0" $env:RBE_fail_early_min_action_count = "0"

View file

@ -30,6 +30,8 @@ static_library("chrome") {
"//chrome/browser/devtools/devtools_file_system_indexer.cc", "//chrome/browser/devtools/devtools_file_system_indexer.cc",
"//chrome/browser/devtools/devtools_file_system_indexer.h", "//chrome/browser/devtools/devtools_file_system_indexer.h",
"//chrome/browser/devtools/devtools_settings.h", "//chrome/browser/devtools/devtools_settings.h",
"//chrome/browser/devtools/features.cc",
"//chrome/browser/devtools/features.h",
"//chrome/browser/devtools/visual_logging.cc", "//chrome/browser/devtools/visual_logging.cc",
"//chrome/browser/devtools/visual_logging.h", "//chrome/browser/devtools/visual_logging.h",
"//chrome/browser/extensions/global_shortcut_listener.cc", "//chrome/browser/extensions/global_shortcut_listener.cc",
@ -195,6 +197,7 @@ static_library("chrome") {
"//chrome/app/vector_icons", "//chrome/app/vector_icons",
"//chrome/browser:resource_prefetch_predictor_proto", "//chrome/browser:resource_prefetch_predictor_proto",
"//chrome/browser/resource_coordinator:mojo_bindings", "//chrome/browser/resource_coordinator:mojo_bindings",
"//chrome/browser/task_manager/common:impl",
"//chrome/browser/ui/webui/tab_search:mojo_bindings", "//chrome/browser/ui/webui/tab_search:mojo_bindings",
"//chrome/browser/web_applications/mojom:mojom_web_apps_enum", "//chrome/browser/web_applications/mojom:mojom_web_apps_enum",
"//components/enterprise/buildflags", "//components/enterprise/buildflags",

View file

@ -93,9 +93,7 @@ async function loadApplicationPackage (packagePath: string) {
try { try {
process.emitWarning = () => {}; process.emitWarning = () => {};
packageJson = (await import(url.pathToFileURL(packageJsonPath).toString(), { packageJson = (await import(url.pathToFileURL(packageJsonPath).toString(), {
assert: { with: { type: 'json' }
type: 'json'
}
})).default; })).default;
} catch (e) { } catch (e) {
showErrorMessage(`Unable to parse ${packageJsonPath}\n\n${(e as Error).message}`); showErrorMessage(`Unable to parse ${packageJsonPath}\n\n${(e as Error).message}`);

View file

@ -749,6 +749,7 @@ libcxx_headers = [
"//third_party/libc++/src/include/__type_traits/common_type.h", "//third_party/libc++/src/include/__type_traits/common_type.h",
"//third_party/libc++/src/include/__type_traits/conditional.h", "//third_party/libc++/src/include/__type_traits/conditional.h",
"//third_party/libc++/src/include/__type_traits/conjunction.h", "//third_party/libc++/src/include/__type_traits/conjunction.h",
"//third_party/libc++/src/include/__type_traits/container_traits.h",
"//third_party/libc++/src/include/__type_traits/copy_cv.h", "//third_party/libc++/src/include/__type_traits/copy_cv.h",
"//third_party/libc++/src/include/__type_traits/copy_cvref.h", "//third_party/libc++/src/include/__type_traits/copy_cvref.h",
"//third_party/libc++/src/include/__type_traits/datasizeof.h", "//third_party/libc++/src/include/__type_traits/datasizeof.h",
@ -789,6 +790,7 @@ libcxx_headers = [
"//third_party/libc++/src/include/__type_traits/is_floating_point.h", "//third_party/libc++/src/include/__type_traits/is_floating_point.h",
"//third_party/libc++/src/include/__type_traits/is_function.h", "//third_party/libc++/src/include/__type_traits/is_function.h",
"//third_party/libc++/src/include/__type_traits/is_fundamental.h", "//third_party/libc++/src/include/__type_traits/is_fundamental.h",
"//third_party/libc++/src/include/__type_traits/is_implicit_lifetime.h",
"//third_party/libc++/src/include/__type_traits/is_implicitly_default_constructible.h", "//third_party/libc++/src/include/__type_traits/is_implicitly_default_constructible.h",
"//third_party/libc++/src/include/__type_traits/is_integral.h", "//third_party/libc++/src/include/__type_traits/is_integral.h",
"//third_party/libc++/src/include/__type_traits/is_literal_type.h", "//third_party/libc++/src/include/__type_traits/is_literal_type.h",

View file

@ -20,10 +20,10 @@ index 7de8923518dbfb69fef62d7781f906b30cf62155..7a4310d6d8e85f07f0ae6c97726d909c
case ssl_open_record_error: case ssl_open_record_error:
diff --git a/ssl/ssl_lib.cc b/ssl/ssl_lib.cc diff --git a/ssl/ssl_lib.cc b/ssl/ssl_lib.cc
index 1458b456e5251b058e28c7f935f929af7addbee4..994e1c330255ffcc5212dd69fb77d3044068717c 100644 index c84c50710475f5e0ac8633bb97abafdca7fb324f..724d854540ced9b57a7fc804f61fff89f6f9fadf 100644
--- a/ssl/ssl_lib.cc --- a/ssl/ssl_lib.cc
+++ b/ssl/ssl_lib.cc +++ b/ssl/ssl_lib.cc
@@ -1343,7 +1343,7 @@ int SSL_get_error(const SSL *ssl, int ret_code) { @@ -1335,7 +1335,7 @@ int SSL_get_error(const SSL *ssl, int ret_code) {
} }
if (ret_code == 0) { if (ret_code == 0) {
@ -32,7 +32,7 @@ index 1458b456e5251b058e28c7f935f929af7addbee4..994e1c330255ffcc5212dd69fb77d304
return SSL_ERROR_ZERO_RETURN; return SSL_ERROR_ZERO_RETURN;
} }
// An EOF was observed which violates the protocol, and the underlying // An EOF was observed which violates the protocol, and the underlying
@@ -2725,13 +2725,7 @@ void *SSL_CTX_get_ex_data(const SSL_CTX *ctx, int idx) { @@ -2707,13 +2707,7 @@ void *SSL_CTX_get_ex_data(const SSL_CTX *ctx, int idx) {
return CRYPTO_get_ex_data(&ctx->ex_data, idx); return CRYPTO_get_ex_data(&ctx->ex_data, idx);
} }

View file

@ -123,10 +123,10 @@ index b9aff56f283b10e899c2291f90615cbd3795454c..59f040cead445b02442404c787c1015c
int32_t world_id) override; int32_t world_id) override;
diff --git a/third_party/blink/renderer/core/loader/empty_clients.h b/third_party/blink/renderer/core/loader/empty_clients.h diff --git a/third_party/blink/renderer/core/loader/empty_clients.h b/third_party/blink/renderer/core/loader/empty_clients.h
index 821447d9510b7bffce71bb9cb797c95e526fe890..b1f4f8abdd2b4d1a669274f55588d6d936f0c691 100644 index 3756c89c0ae70a802506aeac66ea26093831d88f..0d65071421e21edd77de0d2463061e6a05049121 100644
--- a/third_party/blink/renderer/core/loader/empty_clients.h --- a/third_party/blink/renderer/core/loader/empty_clients.h
+++ b/third_party/blink/renderer/core/loader/empty_clients.h +++ b/third_party/blink/renderer/core/loader/empty_clients.h
@@ -416,6 +416,8 @@ class CORE_EXPORT EmptyLocalFrameClient : public LocalFrameClient { @@ -415,6 +415,8 @@ class CORE_EXPORT EmptyLocalFrameClient : public LocalFrameClient {
void DidCreateScriptContext(v8::Local<v8::Context>, void DidCreateScriptContext(v8::Local<v8::Context>,
int32_t world_id) override {} int32_t world_id) override {}

View file

@ -8,7 +8,7 @@ categories in use are known / declared. This patch is required for us
to introduce a new Electron category for Electron-specific tracing. to introduce a new Electron category for Electron-specific tracing.
diff --git a/base/trace_event/builtin_categories.h b/base/trace_event/builtin_categories.h diff --git a/base/trace_event/builtin_categories.h b/base/trace_event/builtin_categories.h
index 6d5a8547adb3eafa8c6ead798e21f18c217da256..f3508a818e2b8ecc0bd910d4be54b311e33b1837 100644 index 5ba3046b83e881574470dc551745b855c785e05c..8d417c70a6e1b959353563d25ec6ff532ae34573 100644
--- a/base/trace_event/builtin_categories.h --- a/base/trace_event/builtin_categories.h
+++ b/base/trace_event/builtin_categories.h +++ b/base/trace_event/builtin_categories.h
@@ -88,6 +88,7 @@ @@ -88,6 +88,7 @@

View file

@ -11,7 +11,7 @@ if we ever align our .pak file generation with Chrome we can remove this
patch. patch.
diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
index b1c18a03ccd05609cd65de028b9861c6c9a71568..f507a8cd4b35f577c5b06712145beaa067a1bb79 100644 index f40c70d840845fdb6171ab6ba4cdcf92dbfd9965..7d762b40f44d8dc3cd1cb63c56a188f9bdced1fe 100644
--- a/chrome/BUILD.gn --- a/chrome/BUILD.gn
+++ b/chrome/BUILD.gn +++ b/chrome/BUILD.gn
@@ -200,11 +200,16 @@ if (!is_android && !is_mac) { @@ -200,11 +200,16 @@ if (!is_android && !is_mac) {
@ -33,10 +33,10 @@ index b1c18a03ccd05609cd65de028b9861c6c9a71568..f507a8cd4b35f577c5b06712145beaa0
"//base", "//base",
"//build:branding_buildflags", "//build:branding_buildflags",
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index 696bb78b317178168d78b9619651cafd1bddd5ac..21262f51f5ebe12b396a453b30f067de00b0f376 100644 index 46219ca4fbc09900414526a1e3b8980be79cd29c..bc4a61474cfd88f95485dcd80185b3be3db2b855 100644
--- a/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn
@@ -4534,7 +4534,7 @@ static_library("browser") { @@ -4532,7 +4532,7 @@ static_library("browser") {
] ]
} }
@ -46,10 +46,10 @@ index 696bb78b317178168d78b9619651cafd1bddd5ac..21262f51f5ebe12b396a453b30f067de
# than here in :chrome_dll. # than here in :chrome_dll.
deps += [ "//chrome:packed_resources_integrity_header" ] deps += [ "//chrome:packed_resources_integrity_header" ]
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index 68129387f96ac7c54b1c762dbb2cc001e929b3f5..da12c25bfd3377862c27c74a343ba2a0d4ff1411 100644 index 04996332eac1c4a30db285ff875ebbec982b9055..353a5c6e4d9a7bdee57a3f2f6d0c563a34a66fa1 100644
--- a/chrome/test/BUILD.gn --- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn
@@ -6714,9 +6714,12 @@ test("unit_tests") { @@ -6723,9 +6723,12 @@ test("unit_tests") {
"//chrome/notification_helper", "//chrome/notification_helper",
] ]
@ -63,7 +63,7 @@ index 68129387f96ac7c54b1c762dbb2cc001e929b3f5..da12c25bfd3377862c27c74a343ba2a0
"//chrome//services/util_win:unit_tests", "//chrome//services/util_win:unit_tests",
"//chrome/app:chrome_dll_resources", "//chrome/app:chrome_dll_resources",
"//chrome/app:win_unit_tests", "//chrome/app:win_unit_tests",
@@ -7671,6 +7674,10 @@ test("unit_tests") { @@ -7682,6 +7685,10 @@ test("unit_tests") {
"../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc", "../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc",
] ]
@ -74,7 +74,7 @@ index 68129387f96ac7c54b1c762dbb2cc001e929b3f5..da12c25bfd3377862c27c74a343ba2a0
sources += [ sources += [
# The importer code is not used on Android. # The importer code is not used on Android.
"../common/importer/firefox_importer_utils_unittest.cc", "../common/importer/firefox_importer_utils_unittest.cc",
@@ -7723,7 +7730,6 @@ test("unit_tests") { @@ -7734,7 +7741,6 @@ test("unit_tests") {
# Non-android deps for "unit_tests" target. # Non-android deps for "unit_tests" target.
deps += [ deps += [
"../browser/screen_ai:screen_ai_install_state", "../browser/screen_ai:screen_ai_install_state",

View file

@ -6,7 +6,7 @@ Subject: build: make libcxx_abi_unstable false for electron
https://nornagon.medium.com/a-libc-odyssey-973e51649063 https://nornagon.medium.com/a-libc-odyssey-973e51649063
diff --git a/buildtools/third_party/libc++/__config_site b/buildtools/third_party/libc++/__config_site diff --git a/buildtools/third_party/libc++/__config_site b/buildtools/third_party/libc++/__config_site
index 39cc404dda7ba408438deeaa5b65a01cdd696dcb..355a774a08fb6eb6fa435c4704e8ff9cb5a9f5bd 100644 index 260a4a9772a625ff02d66faffdd6937215402261..6e485725c967ca27d8ffe6b52c47dddd0d82bd7e 100644
--- a/buildtools/third_party/libc++/__config_site --- a/buildtools/third_party/libc++/__config_site
+++ b/buildtools/third_party/libc++/__config_site +++ b/buildtools/third_party/libc++/__config_site
@@ -18,7 +18,9 @@ @@ -18,7 +18,9 @@

View file

@ -9,10 +9,10 @@ potentially prevent a window from being created.
TODO(loc): this patch is currently broken. TODO(loc): this patch is currently broken.
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
index ea7a56f9ebab820bc50167d1f6848078d59f4737..e0708cae6968c14f912bac9c8c7ff90344454237 100644 index 98c865765c57d3387c9193df0fab73bae678983a..f737902ba9a5ff5b98940eca4a8e7c057c64b3bd 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -9104,6 +9104,7 @@ void RenderFrameHostImpl::CreateNewWindow( @@ -9115,6 +9115,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,
@ -21,10 +21,10 @@ index ea7a56f9ebab820bc50167d1f6848078d59f4737..e0708cae6968c14f912bac9c8c7ff903
&no_javascript_access); &no_javascript_access);
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 62854bb03a4e72b716a823ee7fafbb011a86ebb0..06ca908e1668050bb87609406fa4dc9eff9b6adf 100644 index f25b2cc6c138a4e201b6ec9f74f9cb5734195f24..c67be0c23f8b8d6f49ee82e1617c0f3cfee5c9ab 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4772,6 +4772,12 @@ FrameTree* WebContentsImpl::CreateNewWindow( @@ -4781,6 +4781,12 @@ FrameTree* WebContentsImpl::CreateNewWindow(
SetPartitionedPopinOpenerOnNewWindowIfNeeded(new_contents_impl, params, SetPartitionedPopinOpenerOnNewWindowIfNeeded(new_contents_impl, params,
opener); opener);
@ -37,7 +37,7 @@ index 62854bb03a4e72b716a823ee7fafbb011a86ebb0..06ca908e1668050bb87609406fa4dc9e
// If the new frame has a name, make sure any SiteInstances that can find // If the new frame has a name, make sure any SiteInstances that can find
// this named frame have proxies for it. Must be called after // this named frame have proxies for it. Must be called after
// SetSessionStorageNamespace, since this calls CreateRenderView, which uses // SetSessionStorageNamespace, since this calls CreateRenderView, which uses
@@ -4813,12 +4819,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( @@ -4822,12 +4828,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
AddWebContentsDestructionObserver(new_contents_impl); AddWebContentsDestructionObserver(new_contents_impl);
} }
@ -66,10 +66,10 @@ index 61ee456a1bfb842aefd8b644ff0ae630a698ef7c..cbf4276337139a81d46fb263bce8f5ee
// 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 e73432790e5bbd03dc3eb2a2d8c89d77d21430cc..5f60458d39e3554832b63c201e79633cf0219951 100644 index 21967547790cacc162d9b125e60ca24919b6b485..af7126cec088e5ece113dfbea19674421182abaa 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
@@ -760,6 +760,8 @@ bool ContentBrowserClient::CanCreateWindow( @@ -765,6 +765,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,
@ -79,7 +79,7 @@ index e73432790e5bbd03dc3eb2a2d8c89d77d21430cc..5f60458d39e3554832b63c201e79633c
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 7326a96f8b615e7dd7f5077faab98a6a198209bd..ff16736f47ad642211ee21b44479c5e449acf33f 100644 index 0f6781dc459e1072e1f538b2c60c21699b175852..ad94803577af27c84e247ace2137995a9ca886e0 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
@@ -196,6 +196,7 @@ class NetworkService; @@ -196,6 +196,7 @@ class NetworkService;
@ -90,7 +90,7 @@ index 7326a96f8b615e7dd7f5077faab98a6a198209bd..ff16736f47ad642211ee21b44479c5e4
} // namespace network } // namespace network
namespace sandbox { namespace sandbox {
@@ -1322,6 +1323,8 @@ class CONTENT_EXPORT ContentBrowserClient { @@ -1325,6 +1326,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,
@ -100,7 +100,7 @@ index 7326a96f8b615e7dd7f5077faab98a6a198209bd..ff16736f47ad642211ee21b44479c5e4
bool opener_suppressed, bool opener_suppressed,
bool* no_javascript_access); bool* no_javascript_access);
diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc
index 9d14f11ef397a525633292dbedfed40f38a9ec8f..49bc6ce731ea06cae8281107dbaa527060ffd4ce 100644 index 784103345ed40cce8823048bcd6a48c722866f15..94202a07c8774a9ad62938506b22ea3f72916372 100644
--- a/content/public/browser/web_contents_delegate.cc --- a/content/public/browser/web_contents_delegate.cc
+++ b/content/public/browser/web_contents_delegate.cc +++ b/content/public/browser/web_contents_delegate.cc
@@ -31,6 +31,17 @@ namespace content { @@ -31,6 +31,17 @@ namespace content {
@ -122,7 +122,7 @@ index 9d14f11ef397a525633292dbedfed40f38a9ec8f..49bc6ce731ea06cae8281107dbaa5270
WebContents* source, WebContents* source,
const OpenURLParams& params, const OpenURLParams& params,
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
index 294dc13ec8f27875c28b459b56b166f2c8f4a2ff..1a58077807de673e1937f3323c8dc37b4c69468e 100644 index 19dff7ea3f62e5095ee03335978dac5d58cc1465..cbec82fe1fbc43c188ac9c0cf318ee49aa83c503 100644
--- a/content/public/browser/web_contents_delegate.h --- a/content/public/browser/web_contents_delegate.h
+++ b/content/public/browser/web_contents_delegate.h +++ b/content/public/browser/web_contents_delegate.h
@@ -17,6 +17,7 @@ @@ -17,6 +17,7 @@
@ -163,7 +163,7 @@ index 1fd3487243760d5a64bcd27f7022d8d0326bab65..21ecced6578552e30c1a01841053f679
// moved on send. // moved on send.
bool is_background_tab = bool is_background_tab =
diff --git a/content/web_test/browser/web_test_content_browser_client.cc b/content/web_test/browser/web_test_content_browser_client.cc diff --git a/content/web_test/browser/web_test_content_browser_client.cc b/content/web_test/browser/web_test_content_browser_client.cc
index 9e564b2be92aefc2b58617de92dd8d519c3c784f..bf096ab972cc945d19473cc1e55f6f7fc9618778 100644 index b181f3d7429cdccfede3803b0659fc877d68e884..874753add7c176871fee299d32199ebfd9526c68 100644
--- a/content/web_test/browser/web_test_content_browser_client.cc --- a/content/web_test/browser/web_test_content_browser_client.cc
+++ b/content/web_test/browser/web_test_content_browser_client.cc +++ b/content/web_test/browser/web_test_content_browser_client.cc
@@ -520,6 +520,8 @@ bool WebTestContentBrowserClient::CanCreateWindow( @@ -520,6 +520,8 @@ bool WebTestContentBrowserClient::CanCreateWindow(
@ -176,7 +176,7 @@ index 9e564b2be92aefc2b58617de92dd8d519c3c784f..bf096ab972cc945d19473cc1e55f6f7f
bool opener_suppressed, bool opener_suppressed,
bool* no_javascript_access) { bool* no_javascript_access) {
diff --git a/content/web_test/browser/web_test_content_browser_client.h b/content/web_test/browser/web_test_content_browser_client.h diff --git a/content/web_test/browser/web_test_content_browser_client.h b/content/web_test/browser/web_test_content_browser_client.h
index 4145d0d32ca1d1f02620a66f2437eaa58954b4d7..3cb5faab3f2e60d919dd7dd76fd320b8c63de84f 100644 index 126fe65469971b91e763a5e7640649dff1a096c4..398feea2aec7ece17d62259320db9035edabeccd 100644
--- a/content/web_test/browser/web_test_content_browser_client.h --- a/content/web_test/browser/web_test_content_browser_client.h
+++ b/content/web_test/browser/web_test_content_browser_client.h +++ b/content/web_test/browser/web_test_content_browser_client.h
@@ -92,6 +92,8 @@ class WebTestContentBrowserClient : public ShellContentBrowserClient { @@ -92,6 +92,8 @@ class WebTestContentBrowserClient : public ShellContentBrowserClient {

View file

@ -7,7 +7,7 @@ This patch comes after Chromium removed the ScopedAllowIO API in favor
of explicitly adding ScopedAllowBlocking calls as friends. of explicitly adding ScopedAllowBlocking calls as friends.
diff --git a/base/threading/thread_restrictions.h b/base/threading/thread_restrictions.h diff --git a/base/threading/thread_restrictions.h b/base/threading/thread_restrictions.h
index 965206e18e7a536947354c734ef17196c3e736ff..8a8a687d33f725aacf736a20ffc600cdf3fb05e4 100644 index 149838be725f2e09274421d087ce4494ecf4bc1d..17bdae284536b0445bf539651bd6e152a0cb5c6b 100644
--- a/base/threading/thread_restrictions.h --- a/base/threading/thread_restrictions.h
+++ b/base/threading/thread_restrictions.h +++ b/base/threading/thread_restrictions.h
@@ -132,6 +132,7 @@ class KeyStorageLinux; @@ -132,6 +132,7 @@ class KeyStorageLinux;
@ -28,7 +28,7 @@ index 965206e18e7a536947354c734ef17196c3e736ff..8a8a687d33f725aacf736a20ffc600cd
namespace enterprise_connectors { namespace enterprise_connectors {
class LinuxKeyRotationCommand; class LinuxKeyRotationCommand;
} // namespace enterprise_connectors } // namespace enterprise_connectors
@@ -580,6 +584,7 @@ class BASE_EXPORT ScopedAllowBlocking { @@ -583,6 +587,7 @@ class BASE_EXPORT ScopedAllowBlocking {
friend class ::DesktopNotificationBalloon; friend class ::DesktopNotificationBalloon;
friend class ::FirefoxProfileLock; friend class ::FirefoxProfileLock;
friend class ::GaiaConfig; friend class ::GaiaConfig;
@ -36,7 +36,7 @@ index 965206e18e7a536947354c734ef17196c3e736ff..8a8a687d33f725aacf736a20ffc600cd
friend class ::ProfileImpl; friend class ::ProfileImpl;
friend class ::ScopedAllowBlockingForProfile; friend class ::ScopedAllowBlockingForProfile;
friend class ::StartupTabProviderImpl; friend class ::StartupTabProviderImpl;
@@ -620,6 +625,7 @@ class BASE_EXPORT ScopedAllowBlocking { @@ -623,6 +628,7 @@ class BASE_EXPORT ScopedAllowBlocking {
friend class crosapi::LacrosThreadTypeDelegate; friend class crosapi::LacrosThreadTypeDelegate;
friend class crypto::ScopedAllowBlockingForNSS; // http://crbug.com/59847 friend class crypto::ScopedAllowBlockingForNSS; // http://crbug.com/59847
friend class drive::FakeDriveService; friend class drive::FakeDriveService;

View file

@ -14,10 +14,10 @@ track down the source of this problem & figure out if we can fix it
by changing something in Electron. by changing something in Electron.
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 2841e3c1b0cb1bb538c91e18d83ac81ff230d130..14119e672dda39a5ac49f6ef561036a624559f68 100644 index c1e2bf39aa70776b7e3b26ac78c82995cd376c58..c26d53d7555cbdaae5c167aabf49135afb667259 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4698,9 +4698,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( @@ -4707,9 +4707,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
bool renderer_started_hidden = bool renderer_started_hidden =
params.disposition == WindowOpenDisposition::NEW_BACKGROUND_TAB; params.disposition == WindowOpenDisposition::NEW_BACKGROUND_TAB;

View file

@ -80,10 +80,10 @@ index b078a4a06c7b3f767e2e01f0bef2ba440f729620..0459568581a3073333ae6afabd3680f2
content::WebContents* source, content::WebContents* source,
const content::OpenURLParams& params, const content::OpenURLParams& params,
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc
index fb49096b1bd6b54ceaa500db44c38aa47f98cf6c..5b0e28841235ebff05b3c97548f821986baa96ab 100644 index e87612be406274364fd125e7e89e803aa21702d8..0964949aaaec52cbc4db124e345db458df57c040 100644
--- a/chrome/browser/ui/browser.cc --- a/chrome/browser/ui/browser.cc
+++ b/chrome/browser/ui/browser.cc +++ b/chrome/browser/ui/browser.cc
@@ -2096,12 +2096,11 @@ bool Browser::IsWebContentsCreationOverridden( @@ -2110,12 +2110,11 @@ bool Browser::IsWebContentsCreationOverridden(
content::SiteInstance* source_site_instance, content::SiteInstance* source_site_instance,
content::mojom::WindowContainerType window_container_type, content::mojom::WindowContainerType window_container_type,
const GURL& opener_url, const GURL& opener_url,
@ -99,10 +99,10 @@ index fb49096b1bd6b54ceaa500db44c38aa47f98cf6c..5b0e28841235ebff05b3c97548f82198
WebContents* Browser::CreateCustomWebContents( WebContents* Browser::CreateCustomWebContents(
diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h
index 2f17fc1f34808af63448b95bdde72569bf65e364..2a20ad8c9acf60a31382698aa30281addaaf99ed 100644 index 86ea151056ca1e565f2c636aeb23fdff269e8e9a..244cabf50f63d061cba99cfefc2cf992e365b433 100644
--- a/chrome/browser/ui/browser.h --- a/chrome/browser/ui/browser.h
+++ b/chrome/browser/ui/browser.h +++ b/chrome/browser/ui/browser.h
@@ -969,8 +969,7 @@ class Browser : public TabStripModelObserver, @@ -970,8 +970,7 @@ class Browser : public TabStripModelObserver,
content::SiteInstance* source_site_instance, content::SiteInstance* source_site_instance,
content::mojom::WindowContainerType window_container_type, content::mojom::WindowContainerType window_container_type,
const GURL& opener_url, const GURL& opener_url,
@ -155,7 +155,7 @@ index 520674b0a5061057fa4b769ba5db93da81531d3f..b364e20f7bba27f3f167aa201e26c916
} }
content::WebContents* CreateCustomWebContents( content::WebContents* CreateCustomWebContents(
diff --git a/components/embedder_support/android/delegate/web_contents_delegate_android.cc b/components/embedder_support/android/delegate/web_contents_delegate_android.cc diff --git a/components/embedder_support/android/delegate/web_contents_delegate_android.cc b/components/embedder_support/android/delegate/web_contents_delegate_android.cc
index e0f1e382cac773b9ad10bac1166eeea29aa57ffc..d54b9d27802a0f2f6fe269a0c8184b846b01df0d 100644 index bcc4841d7f953805f615b3fe5dd252216aa5e482..76a88284aa409b1458ce5f723a1445bd4b184573 100644
--- a/components/embedder_support/android/delegate/web_contents_delegate_android.cc --- a/components/embedder_support/android/delegate/web_contents_delegate_android.cc
+++ b/components/embedder_support/android/delegate/web_contents_delegate_android.cc +++ b/components/embedder_support/android/delegate/web_contents_delegate_android.cc
@@ -183,14 +183,13 @@ bool WebContentsDelegateAndroid::IsWebContentsCreationOverridden( @@ -183,14 +183,13 @@ bool WebContentsDelegateAndroid::IsWebContentsCreationOverridden(
@ -176,7 +176,7 @@ index e0f1e382cac773b9ad10bac1166eeea29aa57ffc..d54b9d27802a0f2f6fe269a0c8184b84
java_gurl); java_gurl);
} }
diff --git a/components/embedder_support/android/delegate/web_contents_delegate_android.h b/components/embedder_support/android/delegate/web_contents_delegate_android.h diff --git a/components/embedder_support/android/delegate/web_contents_delegate_android.h b/components/embedder_support/android/delegate/web_contents_delegate_android.h
index 704317b01ca869211b3da5e148b7445a39c10384..06f81b78911d8f3176bf0bede20bd287a8bed7a4 100644 index 6c89a03712b9449e1a7b0e38ed9d019b30029c15..50b324ef3f1163e462ad145e58b42bf3fd053a0a 100644
--- a/components/embedder_support/android/delegate/web_contents_delegate_android.h --- a/components/embedder_support/android/delegate/web_contents_delegate_android.h
+++ b/components/embedder_support/android/delegate/web_contents_delegate_android.h +++ b/components/embedder_support/android/delegate/web_contents_delegate_android.h
@@ -82,8 +82,7 @@ class WebContentsDelegateAndroid : public content::WebContentsDelegate { @@ -82,8 +82,7 @@ class WebContentsDelegateAndroid : public content::WebContentsDelegate {
@ -190,7 +190,7 @@ index 704317b01ca869211b3da5e148b7445a39c10384..06f81b78911d8f3176bf0bede20bd287
void SetContentsBounds(content::WebContents* source, void SetContentsBounds(content::WebContents* source,
const gfx::Rect& bounds) override; const gfx::Rect& bounds) override;
diff --git a/components/offline_pages/content/background_loader/background_loader_contents.cc b/components/offline_pages/content/background_loader/background_loader_contents.cc diff --git a/components/offline_pages/content/background_loader/background_loader_contents.cc b/components/offline_pages/content/background_loader/background_loader_contents.cc
index 9a9189517762d3fe1273dd49a9fbf66be7bce61b..b5015fa8de8dd3cbf8e366326575c7e8268e384c 100644 index 072e7d0dde701a8f2d1de2704c8a056363324390..9e5ace2b1f32d5e5c542439f5365f9d9458cbf37 100644
--- a/components/offline_pages/content/background_loader/background_loader_contents.cc --- a/components/offline_pages/content/background_loader/background_loader_contents.cc
+++ b/components/offline_pages/content/background_loader/background_loader_contents.cc +++ b/components/offline_pages/content/background_loader/background_loader_contents.cc
@@ -85,8 +85,7 @@ bool BackgroundLoaderContents::IsWebContentsCreationOverridden( @@ -85,8 +85,7 @@ bool BackgroundLoaderContents::IsWebContentsCreationOverridden(
@ -218,10 +218,10 @@ index c6838c83ef971b88769b1f3fba8095025ae25464..2da6a4e08340e72ba7de5d03444c2f17
content::WebContents* AddNewContents( content::WebContents* AddNewContents(
content::WebContents* source, content::WebContents* source,
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 71f54a7331e1a297fac194da26337a20fbe69301..ab2d3da2c61d42976b5d6f2460ddf4bea53c9af4 100644 index 76d396192337ad3b3046c6eb80c14a7d4a54ac8c..cc2e4302ad121d658bb43af1014b6af42a62d47a 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4667,8 +4667,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( @@ -4676,8 +4676,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
if (delegate_ && delegate_->IsWebContentsCreationOverridden( if (delegate_ && delegate_->IsWebContentsCreationOverridden(
source_site_instance, params.window_container_type, source_site_instance, params.window_container_type,
@ -232,7 +232,7 @@ index 71f54a7331e1a297fac194da26337a20fbe69301..ab2d3da2c61d42976b5d6f2460ddf4be
static_cast<WebContentsImpl*>(delegate_->CreateCustomWebContents( static_cast<WebContentsImpl*>(delegate_->CreateCustomWebContents(
opener, source_site_instance, is_new_browsing_instance, opener, source_site_instance, is_new_browsing_instance,
diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc
index 49bc6ce731ea06cae8281107dbaa527060ffd4ce..b061435dd97fd80e748591390a6d0631eab78c42 100644 index 94202a07c8774a9ad62938506b22ea3f72916372..3069d732ed336fdaf8fed231bdd0407d0a1b2f75 100644
--- a/content/public/browser/web_contents_delegate.cc --- a/content/public/browser/web_contents_delegate.cc
+++ b/content/public/browser/web_contents_delegate.cc +++ b/content/public/browser/web_contents_delegate.cc
@@ -152,8 +152,7 @@ bool WebContentsDelegate::IsWebContentsCreationOverridden( @@ -152,8 +152,7 @@ bool WebContentsDelegate::IsWebContentsCreationOverridden(
@ -246,7 +246,7 @@ index 49bc6ce731ea06cae8281107dbaa527060ffd4ce..b061435dd97fd80e748591390a6d0631
} }
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
index 1a58077807de673e1937f3323c8dc37b4c69468e..87f97ef6c2456e7dcc4a46b820ecba58dcf19388 100644 index cbec82fe1fbc43c188ac9c0cf318ee49aa83c503..9daed06017f4a586e34f1e47dc85b9e6e5136097 100644
--- a/content/public/browser/web_contents_delegate.h --- a/content/public/browser/web_contents_delegate.h
+++ b/content/public/browser/web_contents_delegate.h +++ b/content/public/browser/web_contents_delegate.h
@@ -345,8 +345,7 @@ class CONTENT_EXPORT WebContentsDelegate { @@ -345,8 +345,7 @@ class CONTENT_EXPORT WebContentsDelegate {

View file

@ -11,10 +11,10 @@ not need this dependency.
refs https://chromium-review.googlesource.com/c/chromium/src/+/5573603 refs https://chromium-review.googlesource.com/c/chromium/src/+/5573603
diff --git a/chrome/browser/ui/color/BUILD.gn b/chrome/browser/ui/color/BUILD.gn diff --git a/chrome/browser/ui/color/BUILD.gn b/chrome/browser/ui/color/BUILD.gn
index aa06f30703313055734cbd8e73be651a493aeae1..0cdeec06800d043ac2da933420f22d6d750691d3 100644 index 02d3457d65c4edf2cdbb3c37d90813b496f7945b..ce9e3a87ad650ad99808dea6e292f340fb58aa36 100644
--- a/chrome/browser/ui/color/BUILD.gn --- a/chrome/browser/ui/color/BUILD.gn
+++ b/chrome/browser/ui/color/BUILD.gn +++ b/chrome/browser/ui/color/BUILD.gn
@@ -86,9 +86,6 @@ source_set("mixers") { @@ -87,9 +87,6 @@ source_set("mixers") {
] ]
} }

View file

@ -8,10 +8,10 @@ Allow registering custom protocols to handle service worker main script fetching
Refs https://bugs.chromium.org/p/chromium/issues/detail?id=996511 Refs https://bugs.chromium.org/p/chromium/issues/detail?id=996511
diff --git a/content/browser/service_worker/service_worker_context_wrapper.cc b/content/browser/service_worker/service_worker_context_wrapper.cc diff --git a/content/browser/service_worker/service_worker_context_wrapper.cc b/content/browser/service_worker/service_worker_context_wrapper.cc
index 5b9d98641157e6e624fd08dd1ebafe06636856bc..cca0b314bf6555aaede788b275e44ee78b41cca6 100644 index 8127b7951b2070d49ee99cd93199454355ab925d..2056a3408e6449920d77a9c1659d2732e736e429 100644
--- a/content/browser/service_worker/service_worker_context_wrapper.cc --- a/content/browser/service_worker/service_worker_context_wrapper.cc
+++ b/content/browser/service_worker/service_worker_context_wrapper.cc +++ b/content/browser/service_worker/service_worker_context_wrapper.cc
@@ -1976,6 +1976,26 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( @@ -1959,6 +1959,26 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
loader_factory_bundle_info = loader_factory_bundle_info =
context()->loader_factory_bundle_for_update_check()->Clone(); context()->loader_factory_bundle_for_update_check()->Clone();
@ -38,7 +38,7 @@ index 5b9d98641157e6e624fd08dd1ebafe06636856bc..cca0b314bf6555aaede788b275e44ee7
if (auto* config = content::WebUIConfigMap::GetInstance().GetConfig( if (auto* config = content::WebUIConfigMap::GetInstance().GetConfig(
browser_context(), scope)) { browser_context(), scope)) {
// If this is a Service Worker for a WebUI, the WebUI's URLDataSource // If this is a Service Worker for a WebUI, the WebUI's URLDataSource
@@ -1995,9 +2015,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( @@ -1978,9 +1998,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
features::kEnableServiceWorkersForChromeScheme) && features::kEnableServiceWorkersForChromeScheme) &&
scope.scheme_piece() == kChromeUIScheme) { scope.scheme_piece() == kChromeUIScheme) {
config->RegisterURLDataSource(browser_context()); config->RegisterURLDataSource(browser_context());
@ -49,7 +49,7 @@ index 5b9d98641157e6e624fd08dd1ebafe06636856bc..cca0b314bf6555aaede788b275e44ee7
.emplace(kChromeUIScheme, CreateWebUIServiceWorkerLoaderFactory( .emplace(kChromeUIScheme, CreateWebUIServiceWorkerLoaderFactory(
browser_context(), kChromeUIScheme, browser_context(), kChromeUIScheme,
base::flat_set<std::string>())); base::flat_set<std::string>()));
@@ -2005,9 +2023,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( @@ -1988,9 +2006,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
features::kEnableServiceWorkersForChromeUntrusted) && features::kEnableServiceWorkersForChromeUntrusted) &&
scope.scheme_piece() == kChromeUIUntrustedScheme) { scope.scheme_piece() == kChromeUIUntrustedScheme) {
config->RegisterURLDataSource(browser_context()); config->RegisterURLDataSource(browser_context());

View file

@ -15,10 +15,10 @@ at some point be an API to "unfreeze" the flags, or we may be able to refactor
node initialization to not update flags after V8 initialization. node initialization to not update flags after V8 initialization.
diff --git a/content/renderer/render_process_impl.cc b/content/renderer/render_process_impl.cc diff --git a/content/renderer/render_process_impl.cc b/content/renderer/render_process_impl.cc
index 862b92324440bc77ce19b95bc16d4d3e4a24fe0f..bcff571010a7399dbfd74d484edd7db437b3e747 100644 index dea5f16df0264348d6762aa41605e7f3c22e3f84..a311ddb37031c5cba1859bb31683531de0fcd4af 100644
--- a/content/renderer/render_process_impl.cc --- a/content/renderer/render_process_impl.cc
+++ b/content/renderer/render_process_impl.cc +++ b/content/renderer/render_process_impl.cc
@@ -209,6 +209,9 @@ RenderProcessImpl::RenderProcessImpl() @@ -200,6 +200,9 @@ RenderProcessImpl::RenderProcessImpl()
v8::V8::SetFlagsFromString(kSABPerContextFlag, sizeof(kSABPerContextFlag)); v8::V8::SetFlagsFromString(kSABPerContextFlag, sizeof(kSABPerContextFlag));
} }

View file

@ -6,7 +6,7 @@ Subject: disable_hidden.patch
Electron uses this to disable background throttling for hidden windows. Electron uses this to disable background throttling for hidden windows.
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 e309e8b96cd6605fc812fda2ca3c7ece07824e0c..c74c3d2bad9eaea9fe7cab4069222afc4bb77162 100644 index 5a521aa5a61172954ad09a49c44a22633b1471ac..ce714ed077d9e5a22b5de926408fbe6d35cc04d6 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
@@ -789,6 +789,10 @@ void RenderWidgetHostImpl::WasHidden() { @@ -789,6 +789,10 @@ void RenderWidgetHostImpl::WasHidden() {
@ -17,14 +17,14 @@ index e309e8b96cd6605fc812fda2ca3c7ece07824e0c..c74c3d2bad9eaea9fe7cab4069222afc
+ return; + return;
+ } + }
+ +
RejectPointerLockOrUnlockIfNecessary( // Cancel pending pointer lock requests, unless there's an open user prompt.
blink::mojom::PointerLockResult::kWrongDocument); // Prompts should remain open and functional across tab switches.
if (!delegate_->IsWaitingForPointerLockPrompt(this)) {
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 4ce389437e583f3b0beaac78b4935808ee54c98e..e39e793bc2673d438cdf01aa909d72732aa32ae2 100644 index b8dadc4cca4621e991cdc874e0663cedd3f48d74..34ceb4c605a767e1eaf5434a68132f98b0a4056c 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
@@ -1017,6 +1017,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl @@ -1018,6 +1018,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl
// Requests a commit and forced redraw in the renderer compositor. // Requests a commit and forced redraw in the renderer compositor.
void ForceRedrawForTesting(); void ForceRedrawForTesting();

View file

@ -63,10 +63,10 @@ index a898e09ac0c989952fe2032ca4ea6ddfdacc59e6..46f3936d93277293f2b876759cb1e3a2
void SetEnableReferrers(bool enable_referrers) override; void SetEnableReferrers(bool enable_referrers) override;
#if BUILDFLAG(IS_CT_SUPPORTED) #if BUILDFLAG(IS_CT_SUPPORTED)
diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom
index 0e6697aca687d8d8103f3cc2cdff03be383ba6c3..f8ce2402321d465ca1303d303e30ee68033a2333 100644 index 362d2c79a4f8bda162f87841ba0629e88347bf14..1d26180ac8bd6bfff98d4dddabd44f50911073e1 100644
--- a/services/network/public/mojom/network_context.mojom --- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom
@@ -1290,6 +1290,9 @@ interface NetworkContext { @@ -1287,6 +1287,9 @@ interface NetworkContext {
SetNetworkConditions(mojo_base.mojom.UnguessableToken throttling_profile_id, SetNetworkConditions(mojo_base.mojom.UnguessableToken throttling_profile_id,
NetworkConditions? conditions); NetworkConditions? conditions);

View file

@ -63,7 +63,7 @@ index 31f5b160e4cd755cfb56a62b04261ee1bee80277..8dbc5ac458481d2f805f90101069f02a
#if BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_WIN)
bool EscapeVirtualization(const base::FilePath& user_data_dir); bool EscapeVirtualization(const base::FilePath& user_data_dir);
diff --git a/chrome/browser/process_singleton_posix.cc b/chrome/browser/process_singleton_posix.cc diff --git a/chrome/browser/process_singleton_posix.cc b/chrome/browser/process_singleton_posix.cc
index f8cf2fb4ab66dae92b80c17cdda8b984fe4807c7..1a5d5323c0b37171b61f1fb2445dc18e1738f4ba 100644 index 72cdfe2c4a0258dbd575f536ca42fa1d53f44988..092f60adb1080bea16ac24c53d57539d1c308b3a 100644
--- a/chrome/browser/process_singleton_posix.cc --- a/chrome/browser/process_singleton_posix.cc
+++ b/chrome/browser/process_singleton_posix.cc +++ b/chrome/browser/process_singleton_posix.cc
@@ -615,6 +615,7 @@ class ProcessSingleton::LinuxWatcher @@ -615,6 +615,7 @@ class ProcessSingleton::LinuxWatcher
@ -178,7 +178,7 @@ index f8cf2fb4ab66dae92b80c17cdda8b984fe4807c7..1a5d5323c0b37171b61f1fb2445dc18e
if (!WriteToSocket(socket.fd(), to_send.data(), to_send.length())) { if (!WriteToSocket(socket.fd(), to_send.data(), to_send.length())) {
// Try to kill the other process, because it might have been dead. // Try to kill the other process, because it might have been dead.
diff --git a/chrome/browser/process_singleton_win.cc b/chrome/browser/process_singleton_win.cc diff --git a/chrome/browser/process_singleton_win.cc b/chrome/browser/process_singleton_win.cc
index a0ef81d42bd9a58786b00a1601625e6822bc26f6..27da17eed8fcd69b32dd1f409f6a2efd46a40d88 100644 index 27216805188c77aa45b478e66b04a2d45f92fba6..9646e314af0de3d4a7ccf1c54a339b703be125c2 100644
--- a/chrome/browser/process_singleton_win.cc --- a/chrome/browser/process_singleton_win.cc
+++ b/chrome/browser/process_singleton_win.cc +++ b/chrome/browser/process_singleton_win.cc
@@ -81,10 +81,12 @@ BOOL CALLBACK BrowserWindowEnumeration(HWND window, LPARAM param) { @@ -81,10 +81,12 @@ BOOL CALLBACK BrowserWindowEnumeration(HWND window, LPARAM param) {

View file

@ -363,7 +363,7 @@ index 415156d403a59bf426cf4561a9d58ecdb27524b4..78aa7b2359c684d5305bf6352751dfbb
#if defined(USE_AURA) || BUILDFLAG(IS_MAC) #if defined(USE_AURA) || BUILDFLAG(IS_MAC)
// Assigns integer identifier to the |window| and returns its DesktopMediaID. // Assigns integer identifier to the |window| and returns its DesktopMediaID.
diff --git a/media/capture/video_capture_types.h b/media/capture/video_capture_types.h diff --git a/media/capture/video_capture_types.h b/media/capture/video_capture_types.h
index f2b75f5b2f547ad135c1288bf3639b26dedc8053..ef18724d9f2ea68a47b66fc3981f58a73ac1b51d 100644 index 53e8077c9c0b635df0abdeca43fa9a6373c68252..2805e36cc42190d8197d83f5df235094570e3d5d 100644
--- a/media/capture/video_capture_types.h --- a/media/capture/video_capture_types.h
+++ b/media/capture/video_capture_types.h +++ b/media/capture/video_capture_types.h
@@ -355,6 +355,8 @@ struct CAPTURE_EXPORT VideoCaptureParams { @@ -355,6 +355,8 @@ struct CAPTURE_EXPORT VideoCaptureParams {

View file

@ -85,7 +85,7 @@ index 31a2a14a95540477297943df9b09b1e4659a884d..c02a81b1bd14a300dbbb47ad7aac2d2d
DCHECK(GetZygoteForLaunch()); DCHECK(GetZygoteForLaunch());
// Environment variables could be supported in the future, but are not // Environment variables could be supported in the future, but are not
diff --git a/content/browser/child_process_launcher_helper_mac.cc b/content/browser/child_process_launcher_helper_mac.cc diff --git a/content/browser/child_process_launcher_helper_mac.cc b/content/browser/child_process_launcher_helper_mac.cc
index f1a415f7bd56ece5ab07d2408dbfddf658b45ff3..49bf8f75583cc7b2de415f4ebb42757366a7b51d 100644 index bbea8fff37040029996d1e91e592f6cb5bf8fbc2..13bbd8486279bf575010ab5ad62ba24a0d4cb24f 100644
--- a/content/browser/child_process_launcher_helper_mac.cc --- a/content/browser/child_process_launcher_helper_mac.cc
+++ b/content/browser/child_process_launcher_helper_mac.cc +++ b/content/browser/child_process_launcher_helper_mac.cc
@@ -110,7 +110,8 @@ bool ChildProcessLauncherHelper::BeforeLaunchOnLauncherThread( @@ -110,7 +110,8 @@ bool ChildProcessLauncherHelper::BeforeLaunchOnLauncherThread(
@ -111,7 +111,7 @@ index f1a415f7bd56ece5ab07d2408dbfddf658b45ff3..49bf8f75583cc7b2de415f4ebb427573
} }
diff --git a/content/browser/child_process_launcher_helper_win.cc b/content/browser/child_process_launcher_helper_win.cc diff --git a/content/browser/child_process_launcher_helper_win.cc b/content/browser/child_process_launcher_helper_win.cc
index 2a01487c8ff837357f6d62dba80115b0ec64c343..74343f6a3bfb1eab2aaf1c0b5fba6ceaf9399ef6 100644 index cb0e7d5c5dc0154c6e88ad08ce097afdce4041f9..09b9cff76d9585297fe60f91970c610ac445f06a 100644
--- a/content/browser/child_process_launcher_helper_win.cc --- a/content/browser/child_process_launcher_helper_win.cc
+++ b/content/browser/child_process_launcher_helper_win.cc +++ b/content/browser/child_process_launcher_helper_win.cc
@@ -24,6 +24,8 @@ @@ -24,6 +24,8 @@
@ -155,15 +155,15 @@ index 2a01487c8ff837357f6d62dba80115b0ec64c343..74343f6a3bfb1eab2aaf1c0b5fba6cea
return true; return true;
} }
@@ -159,7 +186,7 @@ ChildProcessLauncherHelper::LaunchProcessOnLauncherThread( @@ -158,7 +185,7 @@ ChildProcessLauncherHelper::LaunchProcessOnLauncherThread(
ChildProcessLauncherHelper::Process process;
*launch_result =
StartSandboxedProcess(delegate_.get(), *command_line(),
- options->handles_to_inherit, &process.process);
+ options, &process.process);
return process;
} }
*is_synchronous_launch = false;
*launch_result = StartSandboxedProcess(
- delegate_.get(), *command_line(), options->handles_to_inherit,
+ delegate_.get(), *command_line(), options,
base::BindOnce(&ChildProcessLauncherHelper::
FinishStartSandboxedProcessOnLauncherThread,
this));
diff --git a/content/browser/service_process_host_impl.cc b/content/browser/service_process_host_impl.cc diff --git a/content/browser/service_process_host_impl.cc b/content/browser/service_process_host_impl.cc
index bdd5bec301f5fcff2d3e3d7994ecbc4eae46da36..f6082bada22c5f4e70af60ea6f555b0f363919c5 100644 index bdd5bec301f5fcff2d3e3d7994ecbc4eae46da36..f6082bada22c5f4e70af60ea6f555b0f363919c5 100644
--- a/content/browser/service_process_host_impl.cc --- a/content/browser/service_process_host_impl.cc
@ -187,10 +187,10 @@ index bdd5bec301f5fcff2d3e3d7994ecbc4eae46da36..f6082bada22c5f4e70af60ea6f555b0f
host->GetChildProcess()->BindServiceInterface(std::move(receiver)); host->GetChildProcess()->BindServiceInterface(std::move(receiver));
} }
diff --git a/content/browser/utility_process_host.cc b/content/browser/utility_process_host.cc diff --git a/content/browser/utility_process_host.cc b/content/browser/utility_process_host.cc
index 23370e926c9fb9c24bb151d6d4dbca7d5936ebae..b617e0fd3aecb3f9cd1c4cfa9aadf68e658a2dbc 100644 index 2fc9fabe67dc4d8c209247e46b57d27ec1a0fb90..ce73ed7f7070ee276511da674599364a468a2c8f 100644
--- a/content/browser/utility_process_host.cc --- a/content/browser/utility_process_host.cc
+++ b/content/browser/utility_process_host.cc +++ b/content/browser/utility_process_host.cc
@@ -179,11 +179,13 @@ const ChildProcessData& UtilityProcessHost::GetData() { @@ -181,11 +181,13 @@ const ChildProcessData& UtilityProcessHost::GetData() {
return process_->GetData(); return process_->GetData();
} }
@ -206,7 +206,7 @@ index 23370e926c9fb9c24bb151d6d4dbca7d5936ebae..b617e0fd3aecb3f9cd1c4cfa9aadf68e
bool UtilityProcessHost::Start() { bool UtilityProcessHost::Start() {
return StartProcess(); return StartProcess();
@@ -230,6 +232,30 @@ void UtilityProcessHost::SetZygoteForTesting(ZygoteCommunication* handle) { @@ -233,6 +235,30 @@ void UtilityProcessHost::SetZygoteForTesting(ZygoteCommunication* handle) {
} }
#endif // BUILDFLAG(USE_ZYGOTE) #endif // BUILDFLAG(USE_ZYGOTE)
@ -237,9 +237,9 @@ index 23370e926c9fb9c24bb151d6d4dbca7d5936ebae..b617e0fd3aecb3f9cd1c4cfa9aadf68e
mojom::ChildProcess* UtilityProcessHost::GetChildProcess() { mojom::ChildProcess* UtilityProcessHost::GetChildProcess() {
return static_cast<ChildProcessHostImpl*>(process_->GetHost()) return static_cast<ChildProcessHostImpl*>(process_->GetHost())
->child_process(); ->child_process();
@@ -436,9 +462,26 @@ bool UtilityProcessHost::StartProcess() { @@ -440,9 +466,26 @@ bool UtilityProcessHost::StartProcess() {
} #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) ||
#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) // BUILDFLAG(IS_MAC)
+#if BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_WIN)
+ file_data_->stdout_handle = std::move(stdout_handle_); + file_data_->stdout_handle = std::move(stdout_handle_);
@ -266,7 +266,7 @@ index 23370e926c9fb9c24bb151d6d4dbca7d5936ebae..b617e0fd3aecb3f9cd1c4cfa9aadf68e
#if BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_WIN)
if (!preload_libraries_.empty()) { if (!preload_libraries_.empty()) {
diff --git a/content/browser/utility_process_host.h b/content/browser/utility_process_host.h diff --git a/content/browser/utility_process_host.h b/content/browser/utility_process_host.h
index 9791ae2f761043b9eecd9064a6fd39a6e2339af4..c1809298c830b814f886859c2626d6bce7b9ac8c 100644 index faa41e5f2571f7a8aa4eef927eca003801d787f6..16d5efc5f9191020aa2180d665cf520748a62a8f 100644
--- a/content/browser/utility_process_host.h --- a/content/browser/utility_process_host.h
+++ b/content/browser/utility_process_host.h +++ b/content/browser/utility_process_host.h
@@ -29,6 +29,10 @@ @@ -29,6 +29,10 @@
@ -280,7 +280,7 @@ index 9791ae2f761043b9eecd9064a6fd39a6e2339af4..c1809298c830b814f886859c2626d6bc
namespace base { namespace base {
class Thread; class Thread;
} // namespace base } // namespace base
@@ -98,9 +102,13 @@ class CONTENT_EXPORT UtilityProcessHost @@ -99,9 +103,13 @@ class CONTENT_EXPORT UtilityProcessHost
// Returns information about the utility child process. // Returns information about the utility child process.
const ChildProcessData& GetData(); const ChildProcessData& GetData();
@ -296,7 +296,7 @@ index 9791ae2f761043b9eecd9064a6fd39a6e2339af4..c1809298c830b814f886859c2626d6bc
// Starts the utility process. // Starts the utility process.
bool Start(); bool Start();
@@ -138,6 +146,21 @@ class CONTENT_EXPORT UtilityProcessHost @@ -139,6 +147,21 @@ class CONTENT_EXPORT UtilityProcessHost
void SetZygoteForTesting(ZygoteCommunication* handle); void SetZygoteForTesting(ZygoteCommunication* handle);
#endif // BUILDFLAG(USE_ZYGOTE) #endif // BUILDFLAG(USE_ZYGOTE)
@ -318,7 +318,7 @@ index 9791ae2f761043b9eecd9064a6fd39a6e2339af4..c1809298c830b814f886859c2626d6bc
// Returns a control interface for the running child process. // Returns a control interface for the running child process.
mojom::ChildProcess* GetChildProcess(); mojom::ChildProcess* GetChildProcess();
@@ -191,6 +214,27 @@ class CONTENT_EXPORT UtilityProcessHost @@ -192,6 +215,27 @@ class CONTENT_EXPORT UtilityProcessHost
std::optional<raw_ptr<ZygoteCommunication>> zygote_for_testing_; std::optional<raw_ptr<ZygoteCommunication>> zygote_for_testing_;
#endif // BUILDFLAG(USE_ZYGOTE) #endif // BUILDFLAG(USE_ZYGOTE)
@ -465,7 +465,7 @@ index 27cef06ded34680c6bfa3e954924de645a1b8217..7c114956a77da7b60526dd93593d8462
} // namespace content } // namespace content
diff --git a/content/common/sandbox_init_win.cc b/content/common/sandbox_init_win.cc diff --git a/content/common/sandbox_init_win.cc b/content/common/sandbox_init_win.cc
index b96d6a879e8b6664559bac69f726321fdb02b40f..bfeec6ddb98d4127c1dcfe5999894f1cdebdc087 100644 index 38733269e53b9874305942809373004f305ffdec..9f4f5f7dd7f2704e363f43c31ac930aeaabc2b45 100644
--- a/content/common/sandbox_init_win.cc --- a/content/common/sandbox_init_win.cc
+++ b/content/common/sandbox_init_win.cc +++ b/content/common/sandbox_init_win.cc
@@ -23,7 +23,7 @@ namespace content { @@ -23,7 +23,7 @@ namespace content {
@ -474,20 +474,20 @@ index b96d6a879e8b6664559bac69f726321fdb02b40f..bfeec6ddb98d4127c1dcfe5999894f1c
const base::CommandLine& target_command_line, const base::CommandLine& target_command_line,
- const base::HandlesToInheritVector& handles_to_inherit, - const base::HandlesToInheritVector& handles_to_inherit,
+ const base::LaunchOptions* options, + const base::LaunchOptions* options,
base::Process* process) { sandbox::StartSandboxedProcessCallback result_callback) {
std::string type_str = std::string type_str =
target_command_line.GetSwitchValueASCII(switches::kProcessType); target_command_line.GetSwitchValueASCII(switches::kProcessType);
@@ -45,7 +45,7 @@ sandbox::ResultCode StartSandboxedProcess( @@ -45,7 +45,7 @@ sandbox::ResultCode StartSandboxedProcess(
} }
return sandbox::policy::SandboxWin::StartSandboxedProcess( return sandbox::policy::SandboxWin::StartSandboxedProcess(
- full_command_line, handles_to_inherit, delegate, process); - full_command_line, handles_to_inherit, delegate,
+ full_command_line, options, delegate, process); + full_command_line, options, delegate,
std::move(result_callback));
} }
} // namespace content
diff --git a/content/public/browser/service_process_host.cc b/content/public/browser/service_process_host.cc diff --git a/content/public/browser/service_process_host.cc b/content/public/browser/service_process_host.cc
index 8defae52a201a97c402e304216ce772a717a9f7e..4aee78366398c018e315ef15e631d0792ee79c47 100644 index 518d1413705f94bc03eadc4331a6b0f13825265f..3fa4c69377e253e0ed8262b7e77f8fb5c154d274 100644
--- a/content/public/browser/service_process_host.cc --- a/content/public/browser/service_process_host.cc
+++ b/content/public/browser/service_process_host.cc +++ b/content/public/browser/service_process_host.cc
@@ -52,12 +52,53 @@ ServiceProcessHost::Options::WithExtraCommandLineSwitches( @@ -52,12 +52,53 @@ ServiceProcessHost::Options::WithExtraCommandLineSwitches(
@ -628,7 +628,7 @@ index 0062d2cb6634b8b29977a0312516b1b13936b40a..611a52e908f4cb70fbe5628e220a082e
// An interface which can be implemented and registered/unregistered with // An interface which can be implemented and registered/unregistered with
diff --git a/content/public/common/sandbox_init_win.h b/content/public/common/sandbox_init_win.h diff --git a/content/public/common/sandbox_init_win.h b/content/public/common/sandbox_init_win.h
index 9bb4b30ba0f5d37ec2b28f0848d94f34c24f9423..b614fef01ee5cdf81b7112be721b851c454756a2 100644 index 5c24090e3311a89dc2a9162045feaacda574bb99..b772a2a054e9d19025ebd2909acf1b920d389a95 100644
--- a/content/public/common/sandbox_init_win.h --- a/content/public/common/sandbox_init_win.h
+++ b/content/public/common/sandbox_init_win.h +++ b/content/public/common/sandbox_init_win.h
@@ -29,7 +29,7 @@ class SandboxedProcessLauncherDelegate; @@ -29,7 +29,7 @@ class SandboxedProcessLauncherDelegate;
@ -637,7 +637,7 @@ index 9bb4b30ba0f5d37ec2b28f0848d94f34c24f9423..b614fef01ee5cdf81b7112be721b851c
const base::CommandLine& target_command_line, const base::CommandLine& target_command_line,
- const base::HandlesToInheritVector& handles_to_inherit, - const base::HandlesToInheritVector& handles_to_inherit,
+ const base::LaunchOptions* options, + const base::LaunchOptions* options,
base::Process* process); sandbox::StartSandboxedProcessCallback result_callback);
} // namespace content } // namespace content
diff --git a/content/public/common/sandboxed_process_launcher_delegate.cc b/content/public/common/sandboxed_process_launcher_delegate.cc diff --git a/content/public/common/sandboxed_process_launcher_delegate.cc b/content/public/common/sandboxed_process_launcher_delegate.cc
@ -705,10 +705,10 @@ index 4b2ea0e2680c552b853fcbe4f5e4765a908f8915..6e8af760d986911ed6030b24244e9b21
#if BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_MAC)
// Whether or not to disclaim TCC responsibility for the process, defaults to // Whether or not to disclaim TCC responsibility for the process, defaults to
diff --git a/sandbox/policy/win/sandbox_win.cc b/sandbox/policy/win/sandbox_win.cc diff --git a/sandbox/policy/win/sandbox_win.cc b/sandbox/policy/win/sandbox_win.cc
index 00525a5e5146f3789f5ed4bfe4a1cf36b174a00f..55d3c96e00b76e50d5fe8a1695829d3c9db11fbf 100644 index b550651a8a98132104d38df083717e1cb58567e4..52b9eddefcc6a2240babcac824058cd853d3058f 100644
--- a/sandbox/policy/win/sandbox_win.cc --- a/sandbox/policy/win/sandbox_win.cc
+++ b/sandbox/policy/win/sandbox_win.cc +++ b/sandbox/policy/win/sandbox_win.cc
@@ -672,11 +672,9 @@ base::win::ScopedHandle CreateUnsandboxedJob() { @@ -619,11 +619,9 @@ base::win::ScopedHandle CreateUnsandboxedJob() {
// command line flag. // command line flag.
ResultCode LaunchWithoutSandbox( ResultCode LaunchWithoutSandbox(
const base::CommandLine& cmd_line, const base::CommandLine& cmd_line,
@ -721,7 +721,7 @@ index 00525a5e5146f3789f5ed4bfe4a1cf36b174a00f..55d3c96e00b76e50d5fe8a1695829d3c
// Network process runs in a job even when unsandboxed. This is to ensure it // Network process runs in a job even when unsandboxed. This is to ensure it
// does not outlive the browser, which could happen if there is a lot of I/O // does not outlive the browser, which could happen if there is a lot of I/O
// on process shutdown, in which case TerminateProcess can fail. See // on process shutdown, in which case TerminateProcess can fail. See
@@ -906,7 +904,7 @@ bool SandboxWin::InitTargetServices(TargetServices* target_services) { @@ -920,7 +918,7 @@ bool SandboxWin::InitTargetServices(TargetServices* target_services) {
// static // static
ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( ResultCode SandboxWin::GeneratePolicyForSandboxedProcess(
const base::CommandLine& cmd_line, const base::CommandLine& cmd_line,
@ -730,7 +730,7 @@ index 00525a5e5146f3789f5ed4bfe4a1cf36b174a00f..55d3c96e00b76e50d5fe8a1695829d3c
SandboxDelegate* delegate, SandboxDelegate* delegate,
TargetPolicy* policy) { TargetPolicy* policy) {
const base::CommandLine& launcher_process_command_line = const base::CommandLine& launcher_process_command_line =
@@ -920,7 +918,7 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( @@ -934,7 +932,7 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess(
} }
// Add any handles to be inherited to the policy. // Add any handles to be inherited to the policy.
@ -739,7 +739,7 @@ index 00525a5e5146f3789f5ed4bfe4a1cf36b174a00f..55d3c96e00b76e50d5fe8a1695829d3c
policy->AddHandleToShare(handle); policy->AddHandleToShare(handle);
if (!policy->GetConfig()->IsConfigured()) { if (!policy->GetConfig()->IsConfigured()) {
@@ -935,6 +933,13 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( @@ -949,6 +947,13 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess(
// have no effect. These calls can fail with SBOX_ERROR_BAD_PARAMS. // have no effect. These calls can fail with SBOX_ERROR_BAD_PARAMS.
policy->SetStdoutHandle(GetStdHandle(STD_OUTPUT_HANDLE)); policy->SetStdoutHandle(GetStdHandle(STD_OUTPUT_HANDLE));
policy->SetStderrHandle(GetStdHandle(STD_ERROR_HANDLE)); policy->SetStderrHandle(GetStdHandle(STD_ERROR_HANDLE));
@ -753,47 +753,47 @@ index 00525a5e5146f3789f5ed4bfe4a1cf36b174a00f..55d3c96e00b76e50d5fe8a1695829d3c
#endif #endif
if (!delegate->PreSpawnTarget(policy)) if (!delegate->PreSpawnTarget(policy))
@@ -946,7 +951,7 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( @@ -960,7 +965,7 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess(
// static // static
ResultCode SandboxWin::StartSandboxedProcess( ResultCode SandboxWin::StartSandboxedProcess(
const base::CommandLine& cmd_line, const base::CommandLine& cmd_line,
- const base::HandlesToInheritVector& handles_to_inherit, - const base::HandlesToInheritVector& handles_to_inherit,
+ const base::LaunchOptions* options, + const base::LaunchOptions* options,
SandboxDelegate* delegate, SandboxDelegate* delegate,
base::Process* process) { StartSandboxedProcessCallback result_callback) {
SandboxLaunchTimer timer; SandboxLaunchTimer timer;
@@ -954,7 +959,7 @@ ResultCode SandboxWin::StartSandboxedProcess( @@ -970,7 +975,7 @@ ResultCode SandboxWin::StartSandboxedProcess(
// Avoid making a policy if we won't use it.
if (IsUnsandboxedProcess(delegate->GetSandboxType(), cmd_line,
*base::CommandLine::ForCurrentProcess())) { *base::CommandLine::ForCurrentProcess())) {
- return LaunchWithoutSandbox(cmd_line, handles_to_inherit, delegate, base::Process process;
+ return LaunchWithoutSandbox(cmd_line, *options, delegate, ResultCode result =
process); - LaunchWithoutSandbox(cmd_line, handles_to_inherit, delegate, &process);
} + LaunchWithoutSandbox(cmd_line, *options, delegate, &process);
DWORD last_error = GetLastError();
@@ -962,7 +967,7 @@ ResultCode SandboxWin::StartSandboxedProcess( std::move(result_callback).Run(std::move(process), last_error, result);
return SBOX_ALL_OK;
@@ -980,7 +985,7 @@ ResultCode SandboxWin::StartSandboxedProcess(
timer.OnPolicyCreated(); timer.OnPolicyCreated();
ResultCode result = GeneratePolicyForSandboxedProcess( ResultCode result = GeneratePolicyForSandboxedProcess(
- cmd_line, handles_to_inherit, delegate, policy.get()); - cmd_line, handles_to_inherit, delegate, policy.get());
+ cmd_line, options, delegate, policy.get()); + cmd_line, options, delegate, policy.get());
if (SBOX_ALL_OK != result) if (SBOX_ALL_OK != result) {
return result; DWORD last_error = GetLastError();
timer.OnPolicyGenerated(); std::move(result_callback).Run(base::Process(), last_error, result);
diff --git a/sandbox/policy/win/sandbox_win.h b/sandbox/policy/win/sandbox_win.h diff --git a/sandbox/policy/win/sandbox_win.h b/sandbox/policy/win/sandbox_win.h
index 271e80f52b15484ecc8b31b12b012eac39b3d333..cd3d803f52972c4ae8af6a0411b5be0e0a5bc782 100644 index ede8bb552b2602fb06a6317399eb910e24a54216..c86744af9de2c366951d659851aaa9cac74b96de 100644
--- a/sandbox/policy/win/sandbox_win.h --- a/sandbox/policy/win/sandbox_win.h
+++ b/sandbox/policy/win/sandbox_win.h +++ b/sandbox/policy/win/sandbox_win.h
@@ -52,7 +52,7 @@ class SANDBOX_POLICY_EXPORT SandboxWin { @@ -92,7 +92,7 @@ class SANDBOX_POLICY_EXPORT SandboxWin {
// Otherwise, returns one of sandbox::ResultCode for any other error. // any other error.
static ResultCode StartSandboxedProcess( static ResultCode StartSandboxedProcess(
const base::CommandLine& cmd_line, const base::CommandLine& cmd_line,
- const base::HandlesToInheritVector& handles_to_inherit, - const base::HandlesToInheritVector& handles_to_inherit,
+ const base::LaunchOptions* options, + const base::LaunchOptions* options,
SandboxDelegate* delegate, SandboxDelegate* delegate,
base::Process* process); StartSandboxedProcessCallback result_callback);
@@ -65,7 +65,7 @@ class SANDBOX_POLICY_EXPORT SandboxWin { @@ -105,7 +105,7 @@ class SANDBOX_POLICY_EXPORT SandboxWin {
// of sandbox::ResultCode for any other error while constructing the policy. // of sandbox::ResultCode for any other error while constructing the policy.
static ResultCode GeneratePolicyForSandboxedProcess( static ResultCode GeneratePolicyForSandboxedProcess(
const base::CommandLine& cmd_line, const base::CommandLine& cmd_line,

View file

@ -103,7 +103,7 @@ index c72cff69afab53000392220abc7decde1236e178..a94783f6dee223294d1ac0d332067b49
"display_embedder/software_output_surface.h", "display_embedder/software_output_surface.h",
"display_embedder/vsync_parameter_listener.cc", "display_embedder/vsync_parameter_listener.cc",
diff --git a/components/viz/service/display_embedder/output_surface_provider.h b/components/viz/service/display_embedder/output_surface_provider.h diff --git a/components/viz/service/display_embedder/output_surface_provider.h b/components/viz/service/display_embedder/output_surface_provider.h
index 524df4c2a1382e6d009ab1165305a79894dca15e..a21da0785be3884e5e299643d306d25e6e97c841 100644 index 7fbb05e606fc26364c674c6330b8a5eb9c016fb3..a190a42c2127011ab54aae937a3cab36880ce229 100644
--- a/components/viz/service/display_embedder/output_surface_provider.h --- a/components/viz/service/display_embedder/output_surface_provider.h
+++ b/components/viz/service/display_embedder/output_surface_provider.h +++ b/components/viz/service/display_embedder/output_surface_provider.h
@@ -42,7 +42,8 @@ class OutputSurfaceProvider { @@ -42,7 +42,8 @@ class OutputSurfaceProvider {
@ -204,7 +204,7 @@ index e4b46a79560e7698a6400b2ab8a57f38205a8718..3cb2518c6644cf0618f625d981befd46
const raw_ptr<GpuServiceImpl> gpu_service_impl_; const raw_ptr<GpuServiceImpl> gpu_service_impl_;
diff --git a/components/viz/service/display_embedder/software_output_device_mac.cc b/components/viz/service/display_embedder/software_output_device_mac.cc diff --git a/components/viz/service/display_embedder/software_output_device_mac.cc b/components/viz/service/display_embedder/software_output_device_mac.cc
index 7d58c00ddee8b8e14f89b9ba0f82f734294a4828..b9f7c11f28a7fd61cac594cac862d6524b83296d 100644 index 446229f7dea794a0148543d112c63b8c38183262..15d097a5761a07cfbc763d6fc739ca35cf3c8660 100644
--- a/components/viz/service/display_embedder/software_output_device_mac.cc --- a/components/viz/service/display_embedder/software_output_device_mac.cc
+++ b/components/viz/service/display_embedder/software_output_device_mac.cc +++ b/components/viz/service/display_embedder/software_output_device_mac.cc
@@ -111,6 +111,8 @@ void SoftwareOutputDeviceMac::UpdateAndCopyBufferDamage( @@ -111,6 +111,8 @@ void SoftwareOutputDeviceMac::UpdateAndCopyBufferDamage(
@ -521,7 +521,7 @@ index 796ae2688436eb07f19909641d1620dd02f10cdb..c9e0eee0b329caf46669b419b1cd10cf
waiting_on_draw_ack_ = true; waiting_on_draw_ack_ = true;
diff --git a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc diff --git a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
index 463a0f71f75884b78ff33fc459891fbf31a44422..96a74c4b8be58fa7cc5b5066e22c836423ac2a41 100644 index 5243e23874994b543f14dd26fc1b45dafea97c67..20ce7d15f56f54afc6c24e2df8e9808243ea49ca 100644
--- a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc --- a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
+++ b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc +++ b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
@@ -102,7 +102,8 @@ RootCompositorFrameSinkImpl::Create( @@ -102,7 +102,8 @@ RootCompositorFrameSinkImpl::Create(

View file

@ -76,10 +76,10 @@ index f6082bada22c5f4e70af60ea6f555b0f363919c5..228f947edbe04bce242df62080052d9c
void ServiceProcessHost::RemoveObserver(Observer* observer) { void ServiceProcessHost::RemoveObserver(Observer* observer) {
GetServiceProcessTracker().RemoveObserver(observer); GetServiceProcessTracker().RemoveObserver(observer);
diff --git a/content/browser/utility_process_host.cc b/content/browser/utility_process_host.cc diff --git a/content/browser/utility_process_host.cc b/content/browser/utility_process_host.cc
index b617e0fd3aecb3f9cd1c4cfa9aadf68e658a2dbc..c1d6999e53b222ae08ddb5f403de780d01b0ba71 100644 index ce73ed7f7070ee276511da674599364a468a2c8f..3af02ceeddc8eb5c585fb04baa4bb20574a2df1b 100644
--- a/content/browser/utility_process_host.cc --- a/content/browser/utility_process_host.cc
+++ b/content/browser/utility_process_host.cc +++ b/content/browser/utility_process_host.cc
@@ -519,7 +519,7 @@ void UtilityProcessHost::OnProcessCrashed(int exit_code) { @@ -523,7 +523,7 @@ void UtilityProcessHost::OnProcessCrashed(int exit_code) {
// Take ownership of |client_| so the destructor doesn't notify it of // Take ownership of |client_| so the destructor doesn't notify it of
// termination. // termination.
auto client = std::move(client_); auto client = std::move(client_);
@ -89,10 +89,10 @@ index b617e0fd3aecb3f9cd1c4cfa9aadf68e658a2dbc..c1d6999e53b222ae08ddb5f403de780d
std::optional<std::string> UtilityProcessHost::GetServiceName() { std::optional<std::string> UtilityProcessHost::GetServiceName() {
diff --git a/content/browser/utility_process_host.h b/content/browser/utility_process_host.h diff --git a/content/browser/utility_process_host.h b/content/browser/utility_process_host.h
index c1809298c830b814f886859c2626d6bce7b9ac8c..8d202e7e47c08c33394eb49e87b48225f72af445 100644 index 16d5efc5f9191020aa2180d665cf520748a62a8f..54eab3d0f1625f9cbdd38eb89d11732fa0bfdaf9 100644
--- a/content/browser/utility_process_host.h --- a/content/browser/utility_process_host.h
+++ b/content/browser/utility_process_host.h +++ b/content/browser/utility_process_host.h
@@ -78,7 +78,7 @@ class CONTENT_EXPORT UtilityProcessHost @@ -79,7 +79,7 @@ class CONTENT_EXPORT UtilityProcessHost
virtual void OnProcessLaunched(const base::Process& process) {} virtual void OnProcessLaunched(const base::Process& process) {}
virtual void OnProcessTerminatedNormally() {} virtual void OnProcessTerminatedNormally() {}

View file

@ -112,10 +112,10 @@ index 3450c15835d8b792f37764f6edc4a4560be435ef..b1034aa141d6121f8e1524fb34a28a04
string mime_type; string mime_type;
diff --git a/services/network/url_loader.cc b/services/network/url_loader.cc diff --git a/services/network/url_loader.cc b/services/network/url_loader.cc
index 490ccc66460c62eeb16c2b979e01efd54c4e3eb4..d68c15a828a1c16ad3644d7c4c036bf0e544d1b4 100644 index 07142dacbb70d8610604d80328a1176efc1cf2c0..aa1bd9c89083c20a7455a97dd5b2d6e5ce1dc123 100644
--- a/services/network/url_loader.cc --- a/services/network/url_loader.cc
+++ b/services/network/url_loader.cc +++ b/services/network/url_loader.cc
@@ -578,6 +578,9 @@ URLLoader::URLLoader( @@ -598,6 +598,9 @@ URLLoader::URLLoader(
mojo::SimpleWatcher::ArmingPolicy::MANUAL, mojo::SimpleWatcher::ArmingPolicy::MANUAL,
base::SequencedTaskRunner::GetCurrentDefault()), base::SequencedTaskRunner::GetCurrentDefault()),
per_factory_orb_state_(context.GetMutableOrbState()), per_factory_orb_state_(context.GetMutableOrbState()),
@ -125,7 +125,7 @@ index 490ccc66460c62eeb16c2b979e01efd54c4e3eb4..d68c15a828a1c16ad3644d7c4c036bf0
devtools_request_id_(request.devtools_request_id), devtools_request_id_(request.devtools_request_id),
request_mode_(request.mode), request_mode_(request.mode),
request_credentials_mode_(request.credentials_mode), request_credentials_mode_(request.credentials_mode),
@@ -839,7 +842,7 @@ void URLLoader::ConfigureRequest( @@ -869,7 +872,7 @@ void URLLoader::ConfigureRequest(
&URLLoader::IsSharedDictionaryReadAllowed, base::Unretained(this))); &URLLoader::IsSharedDictionaryReadAllowed, base::Unretained(this)));
} }
@ -134,7 +134,7 @@ index 490ccc66460c62eeb16c2b979e01efd54c4e3eb4..d68c15a828a1c16ad3644d7c4c036bf0
url_request_->SetResponseHeadersCallback(base::BindRepeating( url_request_->SetResponseHeadersCallback(base::BindRepeating(
&URLLoader::SetRawResponseHeaders, base::Unretained(this))); &URLLoader::SetRawResponseHeaders, base::Unretained(this)));
} }
@@ -1802,6 +1805,19 @@ void URLLoader::OnResponseStarted(net::URLRequest* url_request, int net_error) { @@ -1838,6 +1841,19 @@ void URLLoader::OnResponseStarted(net::URLRequest* url_request, int net_error) {
} }
response_ = BuildResponseHead(); response_ = BuildResponseHead();
@ -155,10 +155,10 @@ index 490ccc66460c62eeb16c2b979e01efd54c4e3eb4..d68c15a828a1c16ad3644d7c4c036bf0
// Parse and remove the Trust Tokens response headers, if any are expected, // Parse and remove the Trust Tokens response headers, if any are expected,
diff --git a/services/network/url_loader.h b/services/network/url_loader.h diff --git a/services/network/url_loader.h b/services/network/url_loader.h
index c2a638fb6cf1360d8dcbed058ce295a2ef91000d..f80f2848281fd88f08d23a9b4377a29e2d1ba76e 100644 index e29f1180083d13cb4642457cfd756d93a79c5f01..eb238a5d31c5df1b073d08b8b01f7df0e6119b8e 100644
--- a/services/network/url_loader.h --- a/services/network/url_loader.h
+++ b/services/network/url_loader.h +++ b/services/network/url_loader.h
@@ -704,6 +704,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) URLLoader @@ -706,6 +706,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) URLLoader
std::unique_ptr<ResourceScheduler::ScheduledResourceRequest> std::unique_ptr<ResourceScheduler::ScheduledResourceRequest>
resource_scheduler_request_handle_; resource_scheduler_request_handle_;

View file

@ -23,10 +23,10 @@ Upstream bug https://bugs.chromium.org/p/chromium/issues/detail?id=1081397.
Upstreamed at https://chromium-review.googlesource.com/c/chromium/src/+/3856266. Upstreamed at https://chromium-review.googlesource.com/c/chromium/src/+/3856266.
diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc
index 1162861b389f4c580dd058525e30b2f7cab76177..7f851ed44373445722df544f759537604664543e 100644 index 53bba48293111e74daba50dde617fb78f1bcc7ee..67083fb13db2020f432ec488a784bcfb9570d737 100644
--- a/content/browser/renderer_host/navigation_request.cc --- a/content/browser/renderer_host/navigation_request.cc
+++ b/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc
@@ -10785,6 +10785,12 @@ NavigationRequest::GetOriginForURLLoaderFactoryUncheckedWithDebugInfo() { @@ -10788,6 +10788,12 @@ NavigationRequest::GetOriginForURLLoaderFactoryUncheckedWithDebugInfo() {
"blob"); "blob");
} }
@ -40,7 +40,7 @@ index 1162861b389f4c580dd058525e30b2f7cab76177..7f851ed44373445722df544f75953760
// origin of |common_params.url| and/or |common_params.initiator_origin|. // origin of |common_params.url| and/or |common_params.initiator_origin|.
url::Origin resolved_origin = url::Origin::Resolve( url::Origin resolved_origin = url::Origin::Resolve(
diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc
index 7de11767815fb58e060ae935ef59e2433dfd4d1f..024ee08507a2392f4482c1c1b3c1048ba3a48acb 100644 index 547a483db71e2980cc040fe853775fbc07723979..85c6d240a68e52b9d59fae7bbe36603e627b2893 100644
--- a/third_party/blink/renderer/core/loader/document_loader.cc --- a/third_party/blink/renderer/core/loader/document_loader.cc
+++ b/third_party/blink/renderer/core/loader/document_loader.cc +++ b/third_party/blink/renderer/core/loader/document_loader.cc
@@ -2264,6 +2264,10 @@ Frame* DocumentLoader::CalculateOwnerFrame() { @@ -2264,6 +2264,10 @@ Frame* DocumentLoader::CalculateOwnerFrame() {

View file

@ -11,7 +11,7 @@ while the renderer is blocked. This Cl takes an approach similar to that taken i
MediaQueryList in order to enable the promise to be resolved. MediaQueryList in order to enable the promise to be resolved.
diff --git a/third_party/blink/renderer/core/css/font_face_set_document.cc b/third_party/blink/renderer/core/css/font_face_set_document.cc diff --git a/third_party/blink/renderer/core/css/font_face_set_document.cc b/third_party/blink/renderer/core/css/font_face_set_document.cc
index 01b075079fd7a75fb8cb5d876f6db927678c60db..436d04c3c739a7273c44130f6ed86486568f413c 100644 index 921e3339e967b759e3074278e920616bc85b40b3..c0ffacc4082367e0296359fa5e0aedae53217506 100644
--- a/third_party/blink/renderer/core/css/font_face_set_document.cc --- a/third_party/blink/renderer/core/css/font_face_set_document.cc
+++ b/third_party/blink/renderer/core/css/font_face_set_document.cc +++ b/third_party/blink/renderer/core/css/font_face_set_document.cc
@@ -27,6 +27,7 @@ @@ -27,6 +27,7 @@
@ -22,7 +22,7 @@ index 01b075079fd7a75fb8cb5d876f6db927678c60db..436d04c3c739a7273c44130f6ed86486
#include "third_party/blink/renderer/bindings/core/v8/dictionary.h" #include "third_party/blink/renderer/bindings/core/v8/dictionary.h"
#include "third_party/blink/renderer/core/css/css_font_face.h" #include "third_party/blink/renderer/core/css/css_font_face.h"
#include "third_party/blink/renderer/core/css/css_font_selector.h" #include "third_party/blink/renderer/core/css/css_font_selector.h"
@@ -150,21 +151,27 @@ FontFaceSetDocument::CSSConnectedFontFaceList() const { @@ -144,21 +145,27 @@ FontFaceSetDocument::CSSConnectedFontFaceList() const {
} }
void FontFaceSetDocument::FireDoneEventIfPossible() { void FontFaceSetDocument::FireDoneEventIfPossible() {

View file

@ -87,10 +87,10 @@ index 0c7d5b2c1d3e97420913bd643bb2a524a76fc286..653793fa480f035ce11e079b370bf5ed
// The view with active text input state, i.e., a focused <input> element. // The view with active text input state, i.e., a focused <input> element.
// It will be nullptr if no such view exists. Note that the active view // It will be nullptr if no such view exists. Note that the active view
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index d09320ddcb75d93de990f0ec3963edb6b6b793fe..2841e3c1b0cb1bb538c91e18d83ac81ff230d130 100644 index 5ee493c16d2ff59438c2e233f7e30d796711ee06..c1e2bf39aa70776b7e3b26ac78c82995cd376c58 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -9226,7 +9226,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame( @@ -9235,7 +9235,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame(
"WebContentsImpl::OnFocusedElementChangedInFrame", "WebContentsImpl::OnFocusedElementChangedInFrame",
"render_frame_host", frame); "render_frame_host", frame);
RenderWidgetHostViewBase* root_view = RenderWidgetHostViewBase* root_view =

View file

@ -11,10 +11,10 @@ This patch should be upstreamed as a conditional revert of the logic in desktop
vs mobile runtimes. i.e. restore the old logic only on desktop platforms vs mobile runtimes. i.e. restore the old logic only on desktop platforms
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 c0c9880221704bba85a85e841f7c2ed0ffe482d9..f9cc663212ae493c4cd1861cf57decec5d723152 100644 index 3815310c78446a3cebc61680a01a374d0295e7a3..912669bdf7886b69f8386dd10ad1c1aaba2f5f27 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
@@ -2044,9 +2044,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() { @@ -2048,9 +2048,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() {
void RenderWidgetHostImpl::NotifyScreenInfoChanged() { void RenderWidgetHostImpl::NotifyScreenInfoChanged() {
// The resize message (which may not happen immediately) will carry with it // The resize message (which may not happen immediately) will carry with it
// the screen info as well as the new size (if the screen has changed scale // the screen info as well as the new size (if the screen has changed scale

View file

@ -204,7 +204,7 @@ index fa65331f40b90d812b71a489fd560e9359152d2b..390714d631dc88ef92d59ef9618a5706
const mojom::blink::UserActivationOption user_activation_option_; const mojom::blink::UserActivationOption user_activation_option_;
const mojom::blink::LoadEventBlockingOption blocking_option_; const mojom::blink::LoadEventBlockingOption blocking_option_;
diff --git a/third_party/blink/renderer/core/frame/web_frame_test.cc b/third_party/blink/renderer/core/frame/web_frame_test.cc diff --git a/third_party/blink/renderer/core/frame/web_frame_test.cc b/third_party/blink/renderer/core/frame/web_frame_test.cc
index 1672a1a8821c3621642ee8265fa54c2f47229113..699d3e30d9ca78dc56d6639511138e0420f89e1b 100644 index 9c95dcc932a7744ea43f84fcf558efc14a3096d9..8dddf3b038a99fb52746985526d328707a94b58d 100644
--- a/third_party/blink/renderer/core/frame/web_frame_test.cc --- a/third_party/blink/renderer/core/frame/web_frame_test.cc
+++ b/third_party/blink/renderer/core/frame/web_frame_test.cc +++ b/third_party/blink/renderer/core/frame/web_frame_test.cc
@@ -291,6 +291,7 @@ void ExecuteScriptsInMainWorld( @@ -291,6 +291,7 @@ void ExecuteScriptsInMainWorld(

View file

@ -20,7 +20,7 @@ index 5b38f2caad8e093e44e3231f3a13c3976b15da10..b1c61e7f860decb254c837fb6a05573f
} }
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 ff16736f47ad642211ee21b44479c5e449acf33f..e721bde4eba6cc28bcff0f7df1b6d55aea18eb5d 100644 index ad94803577af27c84e247ace2137995a9ca886e0..10c384267137a983eef90c3de9086f5139a17cc7 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
@@ -337,6 +337,11 @@ class CONTENT_EXPORT ContentBrowserClient { @@ -337,6 +337,11 @@ class CONTENT_EXPORT ContentBrowserClient {

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.spec b/tools/gritsettings/resource_ids.spec diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ids.spec
index 6cdb46db1feaead6031a2ca51d46168649e98499..ba3c9dcc304cc000cf08d695ba6d750f6aa1ad59 100644 index b131fe5e2ee2adc4ba2e04932ff351510e5adf88..6a42ae3402dda916a45505a9b44905add5193db3 100644
--- a/tools/gritsettings/resource_ids.spec --- a/tools/gritsettings/resource_ids.spec
+++ b/tools/gritsettings/resource_ids.spec +++ b/tools/gritsettings/resource_ids.spec
@@ -1355,6 +1355,11 @@ @@ -1370,6 +1370,11 @@
"includes": [8460], "includes": [10060],
}, },
+ "electron/electron_resources.grd": { + "electron/electron_resources.grd": {

View file

@ -35,10 +35,10 @@ system font by checking if it's kCTFontPriorityAttribute is set to
system priority. system priority.
diff --git a/base/BUILD.gn b/base/BUILD.gn diff --git a/base/BUILD.gn b/base/BUILD.gn
index aa1654d428420e99bdce3abf3140f764d73e7c48..3d989d0d38ec85b44f89a525cda922e636aa3ce9 100644 index 3d2dab5457c7e5f2de0dee28ec533b36fc767a40..e5eb12a276d346beb70d6115ccc6de838e5d8803 100644
--- a/base/BUILD.gn --- a/base/BUILD.gn
+++ b/base/BUILD.gn +++ b/base/BUILD.gn
@@ -1036,6 +1036,7 @@ component("base") { @@ -1037,6 +1037,7 @@ component("base") {
"//build:ios_buildflags", "//build:ios_buildflags",
"//build/config/compiler:compiler_buildflags", "//build/config/compiler:compiler_buildflags",
"//third_party/modp_b64", "//third_party/modp_b64",
@ -81,7 +81,7 @@ index 4bf9a3c27e05c6635b2beb8e880b5b43dbed61b5..f328fbb49c45991f44a9c75325491d08
} // namespace base } // namespace base
diff --git a/base/process/launch_mac.cc b/base/process/launch_mac.cc diff --git a/base/process/launch_mac.cc b/base/process/launch_mac.cc
index 569c1c83d82517d9cb65282f766368ce3d9d0572..8114bf8e9a9d002824b3804bff599591eacaba37 100644 index f8ab18cc6b0e5e3d63c1a548aa1d031703c3e96c..c9eb1f688a0ff8f99c8d869cf2cf14206347b359 100644
--- a/base/process/launch_mac.cc --- a/base/process/launch_mac.cc
+++ b/base/process/launch_mac.cc +++ b/base/process/launch_mac.cc
@@ -21,13 +21,19 @@ @@ -21,13 +21,19 @@
@ -558,7 +558,7 @@ index 13c3fe06c417a2565e6af4552930a56c44a01fb3..ef67191f5d010451cde2b084d6165c7d
return kAttributes; return kAttributes;
} }
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
index 70e143feb497711d12857333d48ce2ac4325bcd9..3ec50c52f1d824c544c77515213f7a50c9870a11 100644 index 2d5c5f20907719f50663911e21f8eedf016f251f..e025a098d1e77c682b3e12fb8f1a7f300fdb119e 100644
--- a/content/browser/BUILD.gn --- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn
@@ -320,6 +320,7 @@ source_set("browser") { @@ -320,6 +320,7 @@ source_set("browser") {
@ -771,7 +771,7 @@ index a1068589ad844518038ee7bc15a3de9bc5cba525..1ff781c49f086ec8015c7d3c44567dbe
} // namespace content } // namespace content
diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
index 3788cc19ac4abf84ad856a15b94f88fb4fdec00d..26a601565370e0ae4479eea7207e58dedef38e14 100644 index b16333d20e5e48b79a6a494581f74d0791ffefa4..4cc8f764c551f1ee11828f31dae143c0fdefeb30 100644
--- a/content/test/BUILD.gn --- a/content/test/BUILD.gn
+++ b/content/test/BUILD.gn +++ b/content/test/BUILD.gn
@@ -638,6 +638,7 @@ static_library("test_support") { @@ -638,6 +638,7 @@ static_library("test_support") {
@ -790,7 +790,7 @@ index 3788cc19ac4abf84ad856a15b94f88fb4fdec00d..26a601565370e0ae4479eea7207e58de
} }
mojom("content_test_mojo_bindings") { mojom("content_test_mojo_bindings") {
@@ -1931,6 +1933,7 @@ test("content_browsertests") { @@ -1930,6 +1932,7 @@ test("content_browsertests") {
"//ui/shell_dialogs", "//ui/shell_dialogs",
"//ui/snapshot", "//ui/snapshot",
"//ui/webui:test_support", "//ui/webui:test_support",
@ -798,7 +798,7 @@ index 3788cc19ac4abf84ad856a15b94f88fb4fdec00d..26a601565370e0ae4479eea7207e58de
] ]
if (!(is_chromeos_ash && target_cpu == "arm64" && current_cpu == "arm")) { if (!(is_chromeos_ash && target_cpu == "arm64" && current_cpu == "arm")) {
@@ -3206,6 +3209,7 @@ test("content_unittests") { @@ -3207,6 +3210,7 @@ test("content_unittests") {
"//ui/latency:test_support", "//ui/latency:test_support",
"//ui/shell_dialogs:shell_dialogs", "//ui/shell_dialogs:shell_dialogs",
"//ui/webui:test_support", "//ui/webui:test_support",
@ -1002,7 +1002,7 @@ index 70d5665ad7b9ef62370497636af919ede2508ad4..f4dc3e2b8053cdb3e8c439ab1a1d6369
} }
diff --git a/sandbox/mac/BUILD.gn b/sandbox/mac/BUILD.gn diff --git a/sandbox/mac/BUILD.gn b/sandbox/mac/BUILD.gn
index 299a028f23314f479d2da8f914a5bdf34698d854..67a56a3b4c8fc524f1ec8cfec856f24d30402134 100644 index 4e53d573ff67615bc7dcee7db6f855c67094f414..8b061d66b1a854b51a5a38b6a71eadab6a7dbbec 100644
--- a/sandbox/mac/BUILD.gn --- a/sandbox/mac/BUILD.gn
+++ b/sandbox/mac/BUILD.gn +++ b/sandbox/mac/BUILD.gn
@@ -39,6 +39,7 @@ component("seatbelt") { @@ -39,6 +39,7 @@ component("seatbelt") {
@ -1371,7 +1371,7 @@ index eb81a70e4d5d5cd3e6ae9b45f8cd1c795ea76c51..9921ccb10d3455600eddd85f77f10228
} // namespace sandbox } // namespace sandbox
diff --git a/third_party/blink/renderer/core/BUILD.gn b/third_party/blink/renderer/core/BUILD.gn diff --git a/third_party/blink/renderer/core/BUILD.gn b/third_party/blink/renderer/core/BUILD.gn
index 2233bfae37c1339eee79fd3b5636e2e71d3ed2c7..ca2cb6a50970db35c2ac0694d3e165462b3ca6d9 100644 index 3bc370e0beafd792ba4737013b3e7d59da8cf306..aa391a0b23372c944ab11a6496771ecbbe6b5e1a 100644
--- a/third_party/blink/renderer/core/BUILD.gn --- a/third_party/blink/renderer/core/BUILD.gn
+++ b/third_party/blink/renderer/core/BUILD.gn +++ b/third_party/blink/renderer/core/BUILD.gn
@@ -403,6 +403,7 @@ component("core") { @@ -403,6 +403,7 @@ component("core") {
@ -1612,10 +1612,10 @@ index c8171f0527fe5194f0ea73b57c4444d4c630fbc4..c2ac4da580e3e7f749a0a4de1e859af6
// Accessible object // Accessible object
if (AXElementWrapper::IsValidElement(value)) { if (AXElementWrapper::IsValidElement(value)) {
diff --git a/ui/base/BUILD.gn b/ui/base/BUILD.gn diff --git a/ui/base/BUILD.gn b/ui/base/BUILD.gn
index f2b93abee260e1cc17c425c6c44e377d11ee1967..c09de27ee1e6d28c0dbbc0d777129e180c92128f 100644 index 8ce9bc840e32fde0f058733376e74e1238a69a7f..cdf34bc28085df368e14fe11df28df019370a69d 100644
--- a/ui/base/BUILD.gn --- a/ui/base/BUILD.gn
+++ b/ui/base/BUILD.gn +++ b/ui/base/BUILD.gn
@@ -381,6 +381,13 @@ component("base") { @@ -386,6 +386,13 @@ component("base") {
sources += [ "resource/resource_bundle_lacros.cc" ] sources += [ "resource/resource_bundle_lacros.cc" ]
} }
@ -1629,7 +1629,7 @@ index f2b93abee260e1cc17c425c6c44e377d11ee1967..c09de27ee1e6d28c0dbbc0d777129e18
if (is_ios) { if (is_ios) {
sources += [ sources += [
"device_form_factor_ios.mm", "device_form_factor_ios.mm",
@@ -532,6 +539,12 @@ component("base") { @@ -537,6 +544,12 @@ component("base") {
"//url", "//url",
] ]
@ -1752,7 +1752,7 @@ index 84afacf999c4905fdbaba332e19058a6471c3436..bbab402c8c11e62dad7fa946d9550efa
deps += [ "//build:ios_buildflags" ] deps += [ "//build:ios_buildflags" ]
} }
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 35b71abc95f83bb01dba3f69e2d69a026840b7a2..6a2ff6768f16e503657cdb7ff6be7587c45842ec 100644 index c4ab83ca4f48e5357fe9bcf024b3f95612223cdf..d97c9731884769079e53fa334f44319e339b4fc2 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
@@ -30,6 +30,7 @@ @@ -30,6 +30,7 @@
@ -1782,7 +1782,7 @@ index 35b71abc95f83bb01dba3f69e2d69a026840b7a2..6a2ff6768f16e503657cdb7ff6be7587
// Query the display's refresh rate. // Query the display's refresh rate.
if (@available(macos 12.0, *)) { if (@available(macos 12.0, *)) {
diff --git a/ui/gfx/BUILD.gn b/ui/gfx/BUILD.gn diff --git a/ui/gfx/BUILD.gn b/ui/gfx/BUILD.gn
index c95b3ce1e1e7b87aab25cf596eb34eea6590db68..0336b2332d8274bd5fe71e4506d3de7b15830576 100644 index 762ffff0e4a7ffc40e85dc82f5f0f243a447a85d..db4fbc65fded3beb58e6c336e1d4c4d33d3b2c25 100644
--- a/ui/gfx/BUILD.gn --- a/ui/gfx/BUILD.gn
+++ b/ui/gfx/BUILD.gn +++ b/ui/gfx/BUILD.gn
@@ -335,6 +335,12 @@ component("gfx") { @@ -335,6 +335,12 @@ component("gfx") {

View file

@ -177,7 +177,7 @@ index 256de870d2c6defd3f0b389ee5f596c01051533f..a898e09ac0c989952fe2032ca4ea6ddf
std::unique_ptr<HostResolver> internal_host_resolver_; std::unique_ptr<HostResolver> internal_host_resolver_;
std::set<std::unique_ptr<HostResolver>, base::UniquePtrComparator> std::set<std::unique_ptr<HostResolver>, base::UniquePtrComparator>
diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom
index 2cea6e6435b25f472252d56f5cbe1eddc1eccec1..0e6697aca687d8d8103f3cc2cdff03be383ba6c3 100644 index 83bce4a3bf9dc2574bc0f9ab8921f3dfe632ec27..362d2c79a4f8bda162f87841ba0629e88347bf14 100644
--- a/services/network/public/mojom/network_context.mojom --- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom
@@ -298,6 +298,16 @@ struct SocketBrokerRemotes { @@ -298,6 +298,16 @@ struct SocketBrokerRemotes {
@ -197,7 +197,7 @@ index 2cea6e6435b25f472252d56f5cbe1eddc1eccec1..0e6697aca687d8d8103f3cc2cdff03be
// Parameters for constructing a network context. // Parameters for constructing a network context.
struct NetworkContextParams { struct NetworkContextParams {
@@ -979,6 +989,9 @@ interface NetworkContext { @@ -976,6 +986,9 @@ interface NetworkContext {
// Sets a client for this network context. // Sets a client for this network context.
SetClient(pending_remote<NetworkContextClient> client); SetClient(pending_remote<NetworkContextClient> client);

View file

@ -133,10 +133,10 @@ index 05d3a12dd84c7005d46cc73b312f97ef418d96f5..4765de982802541b3efc7211d106acc7
const GURL& document_url, const GURL& document_url,
const WeakDocumentPtr& weak_document_ptr, const WeakDocumentPtr& weak_document_ptr,
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 8f202aac088f2850a57d303e265b1f7a7f40b4f2..418268589bc912bb19c61f0914985a448a8907e8 100644 index 22667bee38eb6f71c28132eaf4002f2b46ca3b39..aa6d50c94b28e3a3191acc9a12617205a1c797a9 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
@@ -2108,7 +2108,7 @@ void RenderProcessHostImpl::CreateNotificationService( @@ -2110,7 +2110,7 @@ void RenderProcessHostImpl::CreateNotificationService(
case RenderProcessHost::NotificationServiceCreatorType::kSharedWorker: case RenderProcessHost::NotificationServiceCreatorType::kSharedWorker:
case RenderProcessHost::NotificationServiceCreatorType::kDedicatedWorker: { case RenderProcessHost::NotificationServiceCreatorType::kDedicatedWorker: {
storage_partition_impl_->GetPlatformNotificationContext()->CreateService( storage_partition_impl_->GetPlatformNotificationContext()->CreateService(
@ -145,7 +145,7 @@ index 8f202aac088f2850a57d303e265b1f7a7f40b4f2..418268589bc912bb19c61f0914985a44
creator_type, std::move(receiver)); creator_type, std::move(receiver));
break; break;
} }
@@ -2116,7 +2116,7 @@ void RenderProcessHostImpl::CreateNotificationService( @@ -2118,7 +2118,7 @@ void RenderProcessHostImpl::CreateNotificationService(
CHECK(rfh); CHECK(rfh);
storage_partition_impl_->GetPlatformNotificationContext()->CreateService( storage_partition_impl_->GetPlatformNotificationContext()->CreateService(

View file

@ -10,7 +10,7 @@ an about:blank check to this area.
Ref: https://chromium-review.googlesource.com/c/chromium/src/+/5403876 Ref: https://chromium-review.googlesource.com/c/chromium/src/+/5403876
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
index f4bee04daf1ac7c6af12e7cadc7f45d42312a712..49e80ca315d23c0886a11786b36b0acb1d109b3a 100644 index 8abcf9d0bf63496692408464ca5e5a3ede9dac4b..a21bc7a8dfa8edaad2a32f274e2dbfbcd7ac525c 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -783,8 +783,8 @@ void VerifyThatBrowserAndRendererCalculatedOriginsToCommitMatch( @@ -783,8 +783,8 @@ void VerifyThatBrowserAndRendererCalculatedOriginsToCommitMatch(

View file

@ -860,10 +860,10 @@ index 9c91fdf50b38ad437279eaada4359a7a95911d07..8eed4887949d0c30f067d86aaa971ee5
ScriptingThrottler scripting_throttler_; ScriptingThrottler scripting_throttler_;
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
index 3ec50c52f1d824c544c77515213f7a50c9870a11..14b84d7fa67796afb390eccd227ba4311f536ffa 100644 index e025a098d1e77c682b3e12fb8f1a7f300fdb119e..4f66fb182b99be75f8147c2ecc450833f8efdcd0 100644
--- a/content/browser/BUILD.gn --- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn
@@ -3001,8 +3001,9 @@ source_set("browser") { @@ -3003,8 +3003,9 @@ source_set("browser") {
"//ppapi/shared_impl", "//ppapi/shared_impl",
] ]

View file

@ -51,7 +51,7 @@ index 23a8257aa2a0a671cf7af35aff9906891091606d..31f5b160e4cd755cfb56a62b04261ee1
base::win::MessageWindow window_; // The message-only window. base::win::MessageWindow window_; // The message-only window.
bool is_virtualized_; // Stuck inside Microsoft Softricity VM environment. bool is_virtualized_; // Stuck inside Microsoft Softricity VM environment.
diff --git a/chrome/browser/process_singleton_posix.cc b/chrome/browser/process_singleton_posix.cc diff --git a/chrome/browser/process_singleton_posix.cc b/chrome/browser/process_singleton_posix.cc
index 14b9c99e81e0999d1a2e25557e6a731ec88f6a22..f8cf2fb4ab66dae92b80c17cdda8b984fe4807c7 100644 index 80b0c47637a6726e1e43113d84187910911271b4..72cdfe2c4a0258dbd575f536ca42fa1d53f44988 100644
--- a/chrome/browser/process_singleton_posix.cc --- a/chrome/browser/process_singleton_posix.cc
+++ b/chrome/browser/process_singleton_posix.cc +++ b/chrome/browser/process_singleton_posix.cc
@@ -59,6 +59,7 @@ @@ -59,6 +59,7 @@
@ -129,7 +129,7 @@ index 14b9c99e81e0999d1a2e25557e6a731ec88f6a22..f8cf2fb4ab66dae92b80c17cdda8b984
} }
ProcessSingleton::NotifyResult ProcessSingleton::NotifyOtherProcess() { ProcessSingleton::NotifyResult ProcessSingleton::NotifyOtherProcess() {
@@ -1053,11 +1077,32 @@ bool ProcessSingleton::Create() { @@ -1058,11 +1082,32 @@ bool ProcessSingleton::Create() {
// Create the socket file somewhere in /tmp which is usually mounted as a // Create the socket file somewhere in /tmp which is usually mounted as a
// normal filesystem. Some network filesystems (notably AFS) are screwy and // normal filesystem. Some network filesystems (notably AFS) are screwy and
// do not support Unix domain sockets. // do not support Unix domain sockets.
@ -165,7 +165,7 @@ index 14b9c99e81e0999d1a2e25557e6a731ec88f6a22..f8cf2fb4ab66dae92b80c17cdda8b984
int dir_mode = 0; int dir_mode = 0;
CHECK(base::GetPosixFilePermissions(socket_dir_.GetPath(), &dir_mode) && CHECK(base::GetPosixFilePermissions(socket_dir_.GetPath(), &dir_mode) &&
diff --git a/chrome/browser/process_singleton_win.cc b/chrome/browser/process_singleton_win.cc diff --git a/chrome/browser/process_singleton_win.cc b/chrome/browser/process_singleton_win.cc
index b6dba0d8f1de90c88ac4457351f068f6a111e435..a0ef81d42bd9a58786b00a1601625e6822bc26f6 100644 index 3138eaa2c1e8ed806d81445149d4f88f54d19254..27216805188c77aa45b478e66b04a2d45f92fba6 100644
--- a/chrome/browser/process_singleton_win.cc --- a/chrome/browser/process_singleton_win.cc
+++ b/chrome/browser/process_singleton_win.cc +++ b/chrome/browser/process_singleton_win.cc
@@ -29,7 +29,9 @@ @@ -29,7 +29,9 @@
@ -211,7 +211,7 @@ index b6dba0d8f1de90c88ac4457351f068f6a111e435..a0ef81d42bd9a58786b00a1601625e68
is_virtualized_(false), is_virtualized_(false),
lock_file_(INVALID_HANDLE_VALUE), lock_file_(INVALID_HANDLE_VALUE),
user_data_dir_(user_data_dir), user_data_dir_(user_data_dir),
@@ -378,7 +389,7 @@ ProcessSingleton::NotifyOtherProcessOrCreate() { @@ -381,7 +392,7 @@ ProcessSingleton::NotifyOtherProcessOrCreate() {
bool ProcessSingleton::Create() { bool ProcessSingleton::Create() {
TRACE_EVENT0("startup", "ProcessSingleton::Create"); TRACE_EVENT0("startup", "ProcessSingleton::Create");
@ -220,7 +220,7 @@ index b6dba0d8f1de90c88ac4457351f068f6a111e435..a0ef81d42bd9a58786b00a1601625e68
remote_window_ = chrome::FindRunningChromeWindow(user_data_dir_); remote_window_ = chrome::FindRunningChromeWindow(user_data_dir_);
if (!remote_window_ && !EscapeVirtualization(user_data_dir_)) { if (!remote_window_ && !EscapeVirtualization(user_data_dir_)) {
@@ -387,7 +398,7 @@ bool ProcessSingleton::Create() { @@ -390,7 +401,7 @@ bool ProcessSingleton::Create() {
// access. As documented, it's clearer to NOT request ownership on creation // access. As documented, it's clearer to NOT request ownership on creation
// since it isn't guaranteed we will get it. It is better to create it // since it isn't guaranteed we will get it. It is better to create it
// without ownership and explicitly get the ownership afterward. // without ownership and explicitly get the ownership afterward.
@ -229,7 +229,7 @@ index b6dba0d8f1de90c88ac4457351f068f6a111e435..a0ef81d42bd9a58786b00a1601625e68
if (!only_me.IsValid()) { if (!only_me.IsValid()) {
DPLOG(FATAL) << "CreateMutex failed"; DPLOG(FATAL) << "CreateMutex failed";
return false; return false;
@@ -426,6 +437,17 @@ bool ProcessSingleton::Create() { @@ -429,6 +440,17 @@ bool ProcessSingleton::Create() {
window_.CreateNamed(base::BindRepeating(&ProcessLaunchNotification, window_.CreateNamed(base::BindRepeating(&ProcessLaunchNotification,
notification_callback_), notification_callback_),
user_data_dir_.value()); user_data_dir_.value());

View file

@ -8,7 +8,7 @@ Chrome moved the SetCursor IPC message to mojo, which we use to tell OSR about `
Refs: https://chromium-review.googlesource.com/c/chromium/src/+/2172779 Refs: https://chromium-review.googlesource.com/c/chromium/src/+/2172779
diff --git a/content/browser/renderer_host/render_widget_host_delegate.h b/content/browser/renderer_host/render_widget_host_delegate.h diff --git a/content/browser/renderer_host/render_widget_host_delegate.h b/content/browser/renderer_host/render_widget_host_delegate.h
index 76acfee7bee2bc9ab25fc692a0f2485091a39da5..48cba2fbd4e86956197d7b114dcefc4bc0cd454c 100644 index dea7ba2237cea261fe0b526753e1a9c4e355e484..9e3bf5eca5e9ad99112069a28b7fb8c1dd41aed1 100644
--- a/content/browser/renderer_host/render_widget_host_delegate.h --- a/content/browser/renderer_host/render_widget_host_delegate.h
+++ b/content/browser/renderer_host/render_widget_host_delegate.h +++ b/content/browser/renderer_host/render_widget_host_delegate.h
@@ -27,6 +27,7 @@ @@ -27,6 +27,7 @@
@ -19,7 +19,7 @@ index 76acfee7bee2bc9ab25fc692a0f2485091a39da5..48cba2fbd4e86956197d7b114dcefc4b
#include "ui/gfx/native_widget_types.h" #include "ui/gfx/native_widget_types.h"
namespace blink { namespace blink {
@@ -288,6 +289,9 @@ class CONTENT_EXPORT RenderWidgetHostDelegate { @@ -293,6 +294,9 @@ class CONTENT_EXPORT RenderWidgetHostDelegate {
// Returns the associated RenderViewHostDelegateView*, if possible. // Returns the associated RenderViewHostDelegateView*, if possible.
virtual RenderViewHostDelegateView* GetDelegateView(); virtual RenderViewHostDelegateView* GetDelegateView();
@ -30,10 +30,10 @@ index 76acfee7bee2bc9ab25fc692a0f2485091a39da5..48cba2fbd4e86956197d7b114dcefc4b
// RenderWidgetHost on the primary main frame, and false otherwise. // RenderWidgetHost on the primary main frame, and false otherwise.
virtual bool IsWidgetForPrimaryMainFrame(RenderWidgetHostImpl*); virtual bool IsWidgetForPrimaryMainFrame(RenderWidgetHostImpl*);
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 c74c3d2bad9eaea9fe7cab4069222afc4bb77162..c0c9880221704bba85a85e841f7c2ed0ffe482d9 100644 index ce714ed077d9e5a22b5de926408fbe6d35cc04d6..3815310c78446a3cebc61680a01a374d0295e7a3 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
@@ -1978,6 +1978,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) { @@ -1982,6 +1982,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) {
if (view_) { if (view_) {
view_->UpdateCursor(cursor); view_->UpdateCursor(cursor);
} }
@ -44,10 +44,10 @@ index c74c3d2bad9eaea9fe7cab4069222afc4bb77162..c0c9880221704bba85a85e841f7c2ed0
void RenderWidgetHostImpl::ShowContextMenuAtPoint( void RenderWidgetHostImpl::ShowContextMenuAtPoint(
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 06ca908e1668050bb87609406fa4dc9eff9b6adf..71f54a7331e1a297fac194da26337a20fbe69301 100644 index c67be0c23f8b8d6f49ee82e1617c0f3cfee5c9ab..76d396192337ad3b3046c6eb80c14a7d4a54ac8c 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -5484,6 +5484,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() { @@ -5493,6 +5493,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() {
return text_input_manager_.get(); return text_input_manager_.get();
} }
@ -60,10 +60,10 @@ index 06ca908e1668050bb87609406fa4dc9eff9b6adf..71f54a7331e1a297fac194da26337a20
RenderWidgetHostImpl* render_widget_host) { RenderWidgetHostImpl* render_widget_host) {
return render_widget_host == GetPrimaryMainFrame()->GetRenderWidgetHost(); return render_widget_host == GetPrimaryMainFrame()->GetRenderWidgetHost();
diff --git a/content/browser/web_contents/web_contents_impl.h b/content/browser/web_contents/web_contents_impl.h diff --git a/content/browser/web_contents/web_contents_impl.h b/content/browser/web_contents/web_contents_impl.h
index 451f8d21ce2046382969dd0df588e831f277abf4..9a55acf3cc4da09ad7ba8944a32315d11624590f 100644 index b17c393dd5d622130fa0bea0e74ebfc3a68b4cb3..be8fa9d6b4b72bab11b68a10fc55225cdf4f52aa 100644
--- a/content/browser/web_contents/web_contents_impl.h --- a/content/browser/web_contents/web_contents_impl.h
+++ b/content/browser/web_contents/web_contents_impl.h +++ b/content/browser/web_contents/web_contents_impl.h
@@ -1120,6 +1120,7 @@ class CONTENT_EXPORT WebContentsImpl @@ -1122,6 +1122,7 @@ class CONTENT_EXPORT WebContentsImpl
void SendScreenRects() override; void SendScreenRects() override;
void SendActiveState(bool active) override; void SendActiveState(bool active) override;
TextInputManager* GetTextInputManager() override; TextInputManager* GetTextInputManager() override;

View file

@ -8,10 +8,10 @@ it in Electron and prevent drift from Chrome's blocklist. We should look for a w
to upstream this change to Chrome. to upstream this change to Chrome.
diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc
index 50b148bc25badf4d11c084dd279a7794514e0cbb..1cf7708f4ba89778de35f6953ff03df78fc0d4a7 100644 index c9db1ca9b650effbdf3374038fea663574b414ad..9e6843c6477b9d1034951c51d64ca1b9bfb7bb17 100644
--- a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc --- a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc
+++ b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc +++ b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc
@@ -43,7 +43,6 @@ @@ -45,7 +45,6 @@
#include "chrome/browser/ui/file_system_access/file_system_access_dangerous_file_dialog.h" #include "chrome/browser/ui/file_system_access/file_system_access_dangerous_file_dialog.h"
#include "chrome/browser/ui/file_system_access/file_system_access_dialogs.h" #include "chrome/browser/ui/file_system_access/file_system_access_dialogs.h"
#include "chrome/browser/ui/file_system_access/file_system_access_restricted_directory_dialog.h" #include "chrome/browser/ui/file_system_access/file_system_access_restricted_directory_dialog.h"
@ -19,7 +19,7 @@ index 50b148bc25badf4d11c084dd279a7794514e0cbb..1cf7708f4ba89778de35f6953ff03df7
#include "chrome/grit/generated_resources.h" #include "chrome/grit/generated_resources.h"
#include "components/content_settings/core/browser/host_content_settings_map.h" #include "components/content_settings/core/browser/host_content_settings_map.h"
#include "components/content_settings/core/common/content_settings.h" #include "components/content_settings/core/common/content_settings.h"
@@ -235,122 +234,10 @@ bool MaybeIsLocalUNCPath(const base::FilePath& path) { @@ -239,126 +238,10 @@ bool MaybeIsLocalUNCPath(const base::FilePath& path) {
} }
#endif #endif
@ -97,6 +97,10 @@ index 50b148bc25badf4d11c084dd279a7794514e0cbb..1cf7708f4ba89778de35f6953ff03df7
-#if BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_MAC)
- // Similar Mac specific blocks. - // Similar Mac specific blocks.
- {base::DIR_APP_DATA, nullptr, kBlockAllChildren}, - {base::DIR_APP_DATA, nullptr, kBlockAllChildren},
- // Block access to the user's Applications directory.
- {base::DIR_HOME, FILE_PATH_LITERAL("Applications"), kBlockAllChildren},
- // Block access to the root Applications directory.
- {kNoBasePathKey, FILE_PATH_LITERAL("/Applications"), kBlockAllChildren},
- {base::DIR_HOME, FILE_PATH_LITERAL("Library"), kBlockAllChildren}, - {base::DIR_HOME, FILE_PATH_LITERAL("Library"), kBlockAllChildren},
- // Allow access to other cloud files, such as Google Drive. - // Allow access to other cloud files, such as Google Drive.
- {base::DIR_HOME, FILE_PATH_LITERAL("Library/CloudStorage"), - {base::DIR_HOME, FILE_PATH_LITERAL("Library/CloudStorage"),
@ -147,10 +151,10 @@ index 50b148bc25badf4d11c084dd279a7794514e0cbb..1cf7708f4ba89778de35f6953ff03df7
// Describes a rule for blocking a directory, which can be constructed // Describes a rule for blocking a directory, which can be constructed
// dynamically (based on state) or statically (from kBlockedPaths). // dynamically (based on state) or statically (from kBlockedPaths).
diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h
index eaff88d9e4d14040a597b2739574231b6d2d8232..ec614eb4ad6984ebfa3e8360331db2ee8d11050d 100644 index 67c777c9576587500f37d066689ec072ff483c8f..6390432e93d2517cf94902bd2cf66ad5ac7379f6 100644
--- a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h --- a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h
+++ b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h +++ b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h
@@ -17,12 +17,13 @@ @@ -17,7 +17,7 @@
#include "base/time/default_clock.h" #include "base/time/default_clock.h"
#include "chrome/browser/file_system_access/file_system_access_features.h" #include "chrome/browser/file_system_access/file_system_access_features.h"
#include "chrome/browser/file_system_access/file_system_access_permission_request_manager.h" #include "chrome/browser/file_system_access/file_system_access_permission_request_manager.h"
@ -159,13 +163,7 @@ index eaff88d9e4d14040a597b2739574231b6d2d8232..ec614eb4ad6984ebfa3e8360331db2ee
#include "components/permissions/features.h" #include "components/permissions/features.h"
#include "components/permissions/object_permission_context_base.h" #include "components/permissions/object_permission_context_base.h"
#include "content/public/browser/file_system_access_permission_context.h" #include "content/public/browser/file_system_access_permission_context.h"
#include "third_party/blink/public/mojom/file_system_access/file_system_access_manager.mojom-forward.h" @@ -30,7 +30,7 @@
+
#if !BUILDFLAG(IS_ANDROID)
#include "chrome/browser/permissions/one_time_permissions_tracker.h"
#include "chrome/browser/permissions/one_time_permissions_tracker_observer.h"
@@ -30,7 +31,7 @@
#include "chrome/browser/web_applications/web_app_install_manager_observer.h" #include "chrome/browser/web_applications/web_app_install_manager_observer.h"
#endif #endif
@ -174,13 +172,13 @@ index eaff88d9e4d14040a597b2739574231b6d2d8232..ec614eb4ad6984ebfa3e8360331db2ee
#include "components/enterprise/common/files_scan_data.h" #include "components/enterprise/common/files_scan_data.h"
#endif #endif
@@ -338,6 +339,123 @@ class ChromeFileSystemAccessPermissionContext @@ -333,6 +333,127 @@ class ChromeFileSystemAccessPermissionContext
// KeyedService: // KeyedService:
void Shutdown() override; void Shutdown() override;
+ // Sentinel used to indicate that no PathService key is specified for a path in + // Sentinel used to indicate that no PathService key is specified for a path in
+ // the struct below. + // the struct below.
+ static constexpr int kNoBasePathKey = -1; + static constexpr const int kNoBasePathKey = -1;
+ +
+ enum BlockType { + enum BlockType {
+ kBlockAllChildren, + kBlockAllChildren,
@ -252,6 +250,10 @@ index eaff88d9e4d14040a597b2739574231b6d2d8232..ec614eb4ad6984ebfa3e8360331db2ee
+ #if BUILDFLAG(IS_MAC) + #if BUILDFLAG(IS_MAC)
+ // Similar Mac specific blocks. + // Similar Mac specific blocks.
+ {base::DIR_APP_DATA, nullptr, kBlockAllChildren}, + {base::DIR_APP_DATA, nullptr, kBlockAllChildren},
+ // Block access to the user's Applications directory.
+ {base::DIR_HOME, FILE_PATH_LITERAL("Applications"), kBlockAllChildren},
+ // Block access to the root Applications directory.
+ {kNoBasePathKey, FILE_PATH_LITERAL("/Applications"), kBlockAllChildren},
+ {base::DIR_HOME, FILE_PATH_LITERAL("Library"), kBlockAllChildren}, + {base::DIR_HOME, FILE_PATH_LITERAL("Library"), kBlockAllChildren},
+ // Allow access to other cloud files, such as Google Drive. + // Allow access to other cloud files, such as Google Drive.
+ {base::DIR_HOME, FILE_PATH_LITERAL("Library/CloudStorage"), + {base::DIR_HOME, FILE_PATH_LITERAL("Library/CloudStorage"),
@ -298,12 +300,12 @@ index eaff88d9e4d14040a597b2739574231b6d2d8232..ec614eb4ad6984ebfa3e8360331db2ee
protected: protected:
SEQUENCE_CHECKER(sequence_checker_); SEQUENCE_CHECKER(sequence_checker_);
@@ -357,7 +475,7 @@ class ChromeFileSystemAccessPermissionContext @@ -352,7 +473,7 @@ class ChromeFileSystemAccessPermissionContext
void PermissionGrantDestroyed(PermissionGrantImpl* grant); void PermissionGrantDestroyed(PermissionGrantImpl* grant);
-#if BUILDFLAG(ENTERPRISE_CLOUD_CONTENT_ANALYSIS) -#if BUILDFLAG(ENTERPRISE_CLOUD_CONTENT_ANALYSIS)
+#if 0 +#if 0
void OnContentAnalysisComplete( void OnContentAnalysisComplete(
std::vector<PathInfo> entries, std::vector<content::PathInfo> entries,
EntriesAllowedByEnterprisePolicyCallback callback, EntriesAllowedByEnterprisePolicyCallback callback,

View file

@ -52,7 +52,7 @@ 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 80026f59664bc242e7f59d1066dd58fb8297eae4..b1c18a03ccd05609cd65de028b9861c6c9a71568 100644 index e2d2446670d358346b5c7399596625087627d5e4..f40c70d840845fdb6171ab6ba4cdcf92dbfd9965 100644
--- a/chrome/BUILD.gn --- a/chrome/BUILD.gn
+++ b/chrome/BUILD.gn +++ b/chrome/BUILD.gn
@@ -1560,7 +1560,7 @@ if (is_chrome_branded && !is_android) { @@ -1560,7 +1560,7 @@ if (is_chrome_branded && !is_android) {

View file

@ -6,7 +6,7 @@ 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 1a13fc3eb336211cb6fac83c3b3475aaaf1f72fb..b883b8c508168f5a9d1d847d45627a6d889cfe1f 100644 index b60da2ae38f80f41a938629ba3d1de19a5afde4f..b92ad04c7cd91546a669eaf8e5f627536eda496f 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
@@ -1276,7 +1276,7 @@ bool RenderThreadImpl::IsLcdTextEnabled() { @@ -1276,7 +1276,7 @@ bool RenderThreadImpl::IsLcdTextEnabled() {

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 418268589bc912bb19c61f0914985a448a8907e8..6bc6858fffaf0ad2024ee60cf508dfbbe2085cef 100644 index aa6d50c94b28e3a3191acc9a12617205a1c797a9..513eaeb291806f7a3bb6230cb63f17780c103cdc 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
@@ -1753,6 +1753,10 @@ bool RenderProcessHostImpl::Init() { @@ -1755,6 +1755,10 @@ bool RenderProcessHostImpl::Init() {
std::unique_ptr<SandboxedProcessLauncherDelegate> sandbox_delegate = std::unique_ptr<SandboxedProcessLauncherDelegate> sandbox_delegate =
std::make_unique<RendererSandboxedProcessLauncherDelegateWin>( std::make_unique<RendererSandboxedProcessLauncherDelegateWin>(
*cmd_line, IsPdf(), IsJitDisabled()); *cmd_line, IsPdf(), IsJitDisabled());

View file

@ -9,10 +9,10 @@ is needed for OSR.
Originally landed in https://github.com/electron/libchromiumcontent/pull/226. Originally landed in https://github.com/electron/libchromiumcontent/pull/226.
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index ab2d3da2c61d42976b5d6f2460ddf4bea53c9af4..1ee18d8631e435c5941612ebc3ce71a1b98d71e4 100644 index cc2e4302ad121d658bb43af1014b6af42a62d47a..2585728e652de91cbc9839cb1500e04f87635866 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -3650,6 +3650,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, @@ -3651,6 +3651,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
params.main_frame_name, GetOpener(), primary_main_frame_policy, params.main_frame_name, GetOpener(), primary_main_frame_policy,
base::UnguessableToken::Create()); base::UnguessableToken::Create());
@ -26,7 +26,7 @@ index ab2d3da2c61d42976b5d6f2460ddf4bea53c9af4..1ee18d8631e435c5941612ebc3ce71a1
std::unique_ptr<WebContentsViewDelegate> delegate = std::unique_ptr<WebContentsViewDelegate> delegate =
GetContentClient()->browser()->GetWebContentsViewDelegate(this); GetContentClient()->browser()->GetWebContentsViewDelegate(this);
@@ -3660,6 +3667,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, @@ -3661,6 +3668,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
view_ = CreateWebContentsView(this, std::move(delegate), view_ = CreateWebContentsView(this, std::move(delegate),
&render_view_host_delegate_view_); &render_view_host_delegate_view_);
} }

View file

@ -15,10 +15,10 @@ Note that we also need to manually update embedder's
`api::WebContents::IsFullscreenForTabOrPending` value. `api::WebContents::IsFullscreenForTabOrPending` value.
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
index e0708cae6968c14f912bac9c8c7ff90344454237..f4bee04daf1ac7c6af12e7cadc7f45d42312a712 100644 index f737902ba9a5ff5b98940eca4a8e7c057c64b3bd..8abcf9d0bf63496692408464ca5e5a3ede9dac4b 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -8219,6 +8219,17 @@ void RenderFrameHostImpl::EnterFullscreen( @@ -8230,6 +8230,17 @@ void RenderFrameHostImpl::EnterFullscreen(
} }
} }
@ -37,10 +37,10 @@ index e0708cae6968c14f912bac9c8c7ff90344454237..f4bee04daf1ac7c6af12e7cadc7f45d4
if (had_fullscreen_token && !GetView()->HasFocus()) if (had_fullscreen_token && !GetView()->HasFocus())
GetView()->Focus(); GetView()->Focus();
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 1ee18d8631e435c5941612ebc3ce71a1b98d71e4..d09320ddcb75d93de990f0ec3963edb6b6b793fe 100644 index 2585728e652de91cbc9839cb1500e04f87635866..5ee493c16d2ff59438c2e233f7e30d796711ee06 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -3906,21 +3906,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent( @@ -3907,21 +3907,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent(
const input::NativeWebKeyboardEvent& event) { const input::NativeWebKeyboardEvent& event) {
OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"), OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"),
"WebContentsImpl::PreHandleKeyboardEvent"); "WebContentsImpl::PreHandleKeyboardEvent");
@ -78,7 +78,7 @@ index 1ee18d8631e435c5941612ebc3ce71a1b98d71e4..d09320ddcb75d93de990f0ec3963edb6
} }
bool WebContentsImpl::HandleMouseEvent(const blink::WebMouseEvent& event) { bool WebContentsImpl::HandleMouseEvent(const blink::WebMouseEvent& event) {
@@ -4079,7 +4083,7 @@ void WebContentsImpl::EnterFullscreenMode( @@ -4080,7 +4084,7 @@ void WebContentsImpl::EnterFullscreenMode(
OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode"); OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode");
DCHECK(CanEnterFullscreenMode(requesting_frame)); DCHECK(CanEnterFullscreenMode(requesting_frame));
DCHECK(requesting_frame->IsActive()); DCHECK(requesting_frame->IsActive());

View file

@ -10,10 +10,10 @@ to handle this without patching, but this is fairly clean for now and no longer
patching legacy devtools code. patching legacy devtools code.
diff --git a/front_end/entrypoints/main/MainImpl.ts b/front_end/entrypoints/main/MainImpl.ts diff --git a/front_end/entrypoints/main/MainImpl.ts b/front_end/entrypoints/main/MainImpl.ts
index 29e096c4d3c495f62422c5ae7f40a4aa46f27ff7..902179094cce6a4d296f5e026281626697970d76 100644 index 978092dea5d6c1a62807f2454c359ff9780d4d92..53d57818eb7dc41d02a3d004716ed114ac3bc526 100644
--- a/front_end/entrypoints/main/MainImpl.ts --- a/front_end/entrypoints/main/MainImpl.ts
+++ b/front_end/entrypoints/main/MainImpl.ts +++ b/front_end/entrypoints/main/MainImpl.ts
@@ -762,6 +762,8 @@ export class MainImpl { @@ -767,6 +767,8 @@ export class MainImpl {
globalThis.Main = globalThis.Main || {}; globalThis.Main = globalThis.Main || {};
// @ts-ignore Exported for Tests.js // @ts-ignore Exported for Tests.js
globalThis.Main.Main = MainImpl; globalThis.Main.Main = MainImpl;

View file

@ -54,3 +54,4 @@ build_compile_with_c_20_support.patch
add_v8_taskpirority_to_foreground_task_runner_signature.patch add_v8_taskpirority_to_foreground_task_runner_signature.patch
cli_remove_deprecated_v8_flag.patch cli_remove_deprecated_v8_flag.patch
build_restore_clang_as_default_compiler_on_macos.patch build_restore_clang_as_default_compiler_on_macos.patch
esm_drop_support_for_import_assertions.patch

View file

@ -2386,10 +2386,10 @@ index 0000000000000000000000000000000000000000..37c16859003e61636fe2f1a4040b1e90
+ f.write('\n') + f.write('\n')
diff --git a/tools/generate_original_fs.py b/tools/generate_original_fs.py diff --git a/tools/generate_original_fs.py b/tools/generate_original_fs.py
new file mode 100644 new file mode 100644
index 0000000000000000000000000000000000000000..9be3ac447f9a4dde23fefc26e0b922b4ba88f083 index 0000000000000000000000000000000000000000..5259e6a7a1fd6b21df69dc461dee67d95800c2c8
--- /dev/null --- /dev/null
+++ b/tools/generate_original_fs.py +++ b/tools/generate_original_fs.py
@@ -0,0 +1,19 @@ @@ -0,0 +1,18 @@
+import os +import os
+import sys +import sys
+ +
@ -2408,7 +2408,6 @@ index 0000000000000000000000000000000000000000..9be3ac447f9a4dde23fefc26e0b922b4
+ with open(os.path.join(out_dir, original_fs_file), 'w') as transformed_f: + with open(os.path.join(out_dir, original_fs_file), 'w') as transformed_f:
+ transformed_contents = contents.replace('internal/fs/', 'internal/original-fs/').replace('require(\'fs', 'require(\'original-fs') + transformed_contents = contents.replace('internal/fs/', 'internal/original-fs/').replace('require(\'fs', 'require(\'original-fs')
+ transformed_f.write(transformed_contents) + transformed_f.write(transformed_contents)
+
diff --git a/tools/install.py b/tools/install.py diff --git a/tools/install.py b/tools/install.py
index b132c7bf26c02886a7ab341a1973bf449744ba0f..757e3e60a7be01fac55c5fbb010dbbae00b1bfca 100755 index b132c7bf26c02886a7ab341a1973bf449744ba0f..757e3e60a7be01fac55c5fbb010dbbae00b1bfca 100755
--- a/tools/install.py --- a/tools/install.py

View file

@ -0,0 +1,53 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= <hello@nicr.dev>
Date: Fri, 19 Apr 2024 02:01:24 +0200
Subject: esm: drop support for import assertions
This patch removes support for the `assert` keyword
for import attributes. It was an old variant of the
proposal that was only shipped in V8 and no other
engine, and that has then been replaced by the `with`
keyword.
Chrome is planning to remove support for `assert`
in version 126, which will be released in June.
Node.js already supports the `with` keyword for
import attributes, and this patch does not change that.
PR-URL: https://github.com/nodejs/node/pull/52104
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
(cherry picked from commit 25c79f333104d1feb0d84794d5bcdb4227177c9b)
esm: remove --no-import-harmony-assertions
It is off by default now.
PR-URL: https://github.com/nodejs/node/pull/54890
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
(cherry picked from commit 8fd90938f923ef2a04bb3ebb08b89568fe6fd4ee)
diff --git a/src/node.cc b/src/node.cc
index 9f6f8e53abd7e447d88c187c447431a0d96cd150..4415f18ecbd84c1f41e0febbf2446fb636242d58 100644
--- a/src/node.cc
+++ b/src/node.cc
@@ -778,12 +778,6 @@ static ExitCode ProcessGlobalArgsInternal(std::vector<std::string>* args,
return ExitCode::kInvalidCommandLineArgument2;
}
- // TODO(aduh95): remove this when the harmony-import-assertions flag
- // is removed in V8.
- if (std::find(v8_args.begin(), v8_args.end(),
- "--no-harmony-import-assertions") == v8_args.end()) {
- v8_args.emplace_back("--harmony-import-assertions");
- }
// TODO(aduh95): remove this when the harmony-import-attributes flag
// is removed in V8.
if (std::find(v8_args.begin(),

View file

@ -11,7 +11,7 @@ This is a non-ABI breaking solution added by Node.js in v20.x for:
which are necessary for backporting the vm-related memory fixes in https://github.com/nodejs/node/pull/48510. which are necessary for backporting the vm-related memory fixes in https://github.com/nodejs/node/pull/48510.
diff --git a/include/v8-object.h b/include/v8-object.h diff --git a/include/v8-object.h b/include/v8-object.h
index 71a6c2c9c149116caa410d25aef4087774b81b44..ad8416ea2500f10aad31f25da96b235f4e9c118f 100644 index 3e57ae8efe33f326ef0e5d609c311d4be5b8afd6..dc521d39c2280dfc3217e97c1e413b2be9b4f7ff 100644
--- a/include/v8-object.h --- a/include/v8-object.h
+++ b/include/v8-object.h +++ b/include/v8-object.h
@@ -22,6 +22,8 @@ class Function; @@ -22,6 +22,8 @@ class Function;
@ -46,10 +46,10 @@ index 71a6c2c9c149116caa410d25aef4087774b81b44..ad8416ea2500f10aad31f25da96b235f
V8_INLINE static void* GetAlignedPointerFromInternalField( V8_INLINE static void* GetAlignedPointerFromInternalField(
const BasicTracedReference<Object>& object, int index) { const BasicTracedReference<Object>& object, int index) {
diff --git a/src/api/api.cc b/src/api/api.cc diff --git a/src/api/api.cc b/src/api/api.cc
index 4adaabebe6bd804db0910cea6ff090ef86cb74fc..27e307c774c09ca1c8f2c72d5b3629dd336760a2 100644 index 29dd26037bc9ce4c21f421cba32bc3077bb064d2..674b5c7efb35be2ee0935cae89eac70cc835d448 100644
--- a/src/api/api.cc --- a/src/api/api.cc
+++ b/src/api/api.cc +++ b/src/api/api.cc
@@ -6398,14 +6398,33 @@ Local<Data> v8::Object::SlowGetInternalField(int index) { @@ -6406,14 +6406,33 @@ Local<Data> v8::Object::SlowGetInternalField(int index) {
i::Cast<i::JSObject>(*obj)->GetEmbedderField(index), isolate)); i::Cast<i::JSObject>(*obj)->GetEmbedderField(index), isolate));
} }

View file

@ -92,6 +92,7 @@ const char kDefaultLastPickedDirectoryKey[] = "default-id";
const char kCustomLastPickedDirectoryKey[] = "custom-id"; const char kCustomLastPickedDirectoryKey[] = "custom-id";
const char kPathKey[] = "path"; const char kPathKey[] = "path";
const char kPathTypeKey[] = "path-type"; const char kPathTypeKey[] = "path-type";
const char kDisplayNameKey[] = "display-name";
const char kTimestampKey[] = "timestamp"; const char kTimestampKey[] = "timestamp";
constexpr base::TimeDelta kPermissionRevocationTimeout = base::Seconds(5); constexpr base::TimeDelta kPermissionRevocationTimeout = base::Seconds(5);
@ -210,6 +211,10 @@ std::string GenerateLastPickedDirectoryKey(const std::string& id) {
: base::StrCat({kCustomLastPickedDirectoryKey, "-", id}); : base::StrCat({kCustomLastPickedDirectoryKey, "-", id});
} }
std::string StringOrEmpty(const std::string* s) {
return s ? *s : std::string();
}
} // namespace } // namespace
namespace electron { namespace electron {
@ -219,7 +224,7 @@ class FileSystemAccessPermissionContext::PermissionGrantImpl
public: public:
PermissionGrantImpl(base::WeakPtr<FileSystemAccessPermissionContext> context, PermissionGrantImpl(base::WeakPtr<FileSystemAccessPermissionContext> context,
const url::Origin& origin, const url::Origin& origin,
const base::FilePath& path, const content::PathInfo& path_info,
HandleType handle_type, HandleType handle_type,
GrantType type, GrantType type,
UserAction user_action) UserAction user_action)
@ -227,7 +232,7 @@ class FileSystemAccessPermissionContext::PermissionGrantImpl
origin_{origin}, origin_{origin},
handle_type_{handle_type}, handle_type_{handle_type},
type_{type}, type_{type},
path_{path} {} path_info_{path_info} {}
// FileSystemAccessPermissionGrant: // FileSystemAccessPermissionGrant:
PermissionStatus GetStatus() override { PermissionStatus GetStatus() override {
@ -237,7 +242,12 @@ class FileSystemAccessPermissionContext::PermissionGrantImpl
base::FilePath GetPath() override { base::FilePath GetPath() override {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
return path_; return path_info_.path;
}
std::string GetDisplayName() override {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
return path_info_.display_name;
} }
void RequestPermission( void RequestPermission(
@ -311,7 +321,7 @@ class FileSystemAccessPermissionContext::PermissionGrantImpl
electron::WebContentsPermissionHelper::PermissionType::FILE_SYSTEM); electron::WebContentsPermissionHelper::PermissionType::FILE_SYSTEM);
base::Value::Dict details; base::Value::Dict details;
details.Set("filePath", base::FilePathToValue(path_)); details.Set("filePath", base::FilePathToValue(path_info_.path));
details.Set("isDirectory", handle_type_ == HandleType::kDirectory); details.Set("isDirectory", handle_type_ == HandleType::kDirectory);
details.Set("fileAccessType", details.Set("fileAccessType",
type_ == GrantType::kWrite ? "writable" : "readable"); type_ == GrantType::kWrite ? "writable" : "readable");
@ -350,12 +360,13 @@ class FileSystemAccessPermissionContext::PermissionGrantImpl
static void UpdateGrantPath( static void UpdateGrantPath(
std::map<base::FilePath, PermissionGrantImpl*>& grants, std::map<base::FilePath, PermissionGrantImpl*>& grants,
const base::FilePath& old_path, const content::PathInfo& old_path,
const base::FilePath& new_path) { const content::PathInfo& new_path) {
DCHECK_CURRENTLY_ON(content::BrowserThread::UI); DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
auto entry_it = std::ranges::find_if( auto entry_it =
grants, std::ranges::find_if(grants, [&old_path](const auto& entry) {
[&old_path](const auto& entry) { return entry.first == old_path; }); return entry.first == old_path.path;
});
if (entry_it == grants.end()) { if (entry_it == grants.end()) {
// There must be an entry for an ancestor of this entry. Nothing to do // There must be an entry for an ancestor of this entry. Nothing to do
@ -370,7 +381,7 @@ class FileSystemAccessPermissionContext::PermissionGrantImpl
// Update the permission grant's key in the map of active permissions. // Update the permission grant's key in the map of active permissions.
grants.erase(entry_it); grants.erase(entry_it);
grants.emplace(new_path, grant_impl); grants.emplace(new_path.path, grant_impl);
} }
protected: protected:
@ -396,13 +407,13 @@ class FileSystemAccessPermissionContext::PermissionGrantImpl
} }
} }
void SetPath(const base::FilePath& new_path) { void SetPath(const content::PathInfo& new_path) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
if (path_ == new_path) if (path_info_ == new_path)
return; return;
path_ = new_path; path_info_ = new_path;
NotifyPermissionStatusChanged(); NotifyPermissionStatusChanged();
} }
@ -412,7 +423,7 @@ class FileSystemAccessPermissionContext::PermissionGrantImpl
const url::Origin origin_; const url::Origin origin_;
const HandleType handle_type_; const HandleType handle_type_;
const GrantType type_; const GrantType type_;
base::FilePath path_; content::PathInfo path_info_;
// This member should only be updated via SetStatus(). // This member should only be updated via SetStatus().
PermissionStatus status_ = PermissionStatus::ASK; PermissionStatus status_ = PermissionStatus::ASK;
@ -440,14 +451,14 @@ FileSystemAccessPermissionContext::~FileSystemAccessPermissionContext() =
scoped_refptr<content::FileSystemAccessPermissionGrant> scoped_refptr<content::FileSystemAccessPermissionGrant>
FileSystemAccessPermissionContext::GetReadPermissionGrant( FileSystemAccessPermissionContext::GetReadPermissionGrant(
const url::Origin& origin, const url::Origin& origin,
const base::FilePath& path, const content::PathInfo& path_info,
HandleType handle_type, HandleType handle_type,
UserAction user_action) { UserAction user_action) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
// operator[] might insert a new OriginState in |active_permissions_map_|, // operator[] might insert a new OriginState in |active_permissions_map_|,
// but that is exactly what we want. // but that is exactly what we want.
auto& origin_state = active_permissions_map_[origin]; auto& origin_state = active_permissions_map_[origin];
auto*& existing_grant = origin_state.read_grants[path]; auto*& existing_grant = origin_state.read_grants[path_info.path];
scoped_refptr<PermissionGrantImpl> new_grant; scoped_refptr<PermissionGrantImpl> new_grant;
if (existing_grant && existing_grant->handle_type() != handle_type) { if (existing_grant && existing_grant->handle_type() != handle_type) {
@ -460,15 +471,15 @@ FileSystemAccessPermissionContext::GetReadPermissionGrant(
if (!existing_grant) { if (!existing_grant) {
new_grant = base::MakeRefCounted<PermissionGrantImpl>( new_grant = base::MakeRefCounted<PermissionGrantImpl>(
weak_factory_.GetWeakPtr(), origin, path, handle_type, GrantType::kRead, weak_factory_.GetWeakPtr(), origin, path_info, handle_type,
user_action); GrantType::kRead, user_action);
existing_grant = new_grant.get(); existing_grant = new_grant.get();
} }
// If a parent directory is already readable this new grant should also be // If a parent directory is already readable this new grant should also be
// readable. // readable.
if (new_grant && if (new_grant &&
AncestorHasActivePermission(origin, path, GrantType::kRead)) { AncestorHasActivePermission(origin, path_info.path, GrantType::kRead)) {
existing_grant->SetStatus(PermissionStatus::GRANTED); existing_grant->SetStatus(PermissionStatus::GRANTED);
} else { } else {
switch (user_action) { switch (user_action) {
@ -495,14 +506,14 @@ FileSystemAccessPermissionContext::GetReadPermissionGrant(
scoped_refptr<content::FileSystemAccessPermissionGrant> scoped_refptr<content::FileSystemAccessPermissionGrant>
FileSystemAccessPermissionContext::GetWritePermissionGrant( FileSystemAccessPermissionContext::GetWritePermissionGrant(
const url::Origin& origin, const url::Origin& origin,
const base::FilePath& path, const content::PathInfo& path_info,
HandleType handle_type, HandleType handle_type,
UserAction user_action) { UserAction user_action) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
// operator[] might insert a new OriginState in |active_permissions_map_|, // operator[] might insert a new OriginState in |active_permissions_map_|,
// but that is exactly what we want. // but that is exactly what we want.
auto& origin_state = active_permissions_map_[origin]; auto& origin_state = active_permissions_map_[origin];
auto*& existing_grant = origin_state.write_grants[path]; auto*& existing_grant = origin_state.write_grants[path_info.path];
scoped_refptr<PermissionGrantImpl> new_grant; scoped_refptr<PermissionGrantImpl> new_grant;
if (existing_grant && existing_grant->handle_type() != handle_type) { if (existing_grant && existing_grant->handle_type() != handle_type) {
@ -515,7 +526,7 @@ FileSystemAccessPermissionContext::GetWritePermissionGrant(
if (!existing_grant) { if (!existing_grant) {
new_grant = base::MakeRefCounted<PermissionGrantImpl>( new_grant = base::MakeRefCounted<PermissionGrantImpl>(
weak_factory_.GetWeakPtr(), origin, path, handle_type, weak_factory_.GetWeakPtr(), origin, path_info, handle_type,
GrantType::kWrite, user_action); GrantType::kWrite, user_action);
existing_grant = new_grant.get(); existing_grant = new_grant.get();
} }
@ -523,7 +534,7 @@ FileSystemAccessPermissionContext::GetWritePermissionGrant(
// If a parent directory is already writable this new grant should also be // If a parent directory is already writable this new grant should also be
// writable. // writable.
if (new_grant && if (new_grant &&
AncestorHasActivePermission(origin, path, GrantType::kWrite)) { AncestorHasActivePermission(origin, path_info.path, GrantType::kWrite)) {
existing_grant->SetStatus(PermissionStatus::GRANTED); existing_grant->SetStatus(PermissionStatus::GRANTED);
} else { } else {
switch (user_action) { switch (user_action) {
@ -563,8 +574,7 @@ bool FileSystemAccessPermissionContext::CanObtainWritePermission(
void FileSystemAccessPermissionContext::ConfirmSensitiveEntryAccess( void FileSystemAccessPermissionContext::ConfirmSensitiveEntryAccess(
const url::Origin& origin, const url::Origin& origin,
PathType path_type, const content::PathInfo& path_info,
const base::FilePath& path,
HandleType handle_type, HandleType handle_type,
UserAction user_action, UserAction user_action,
content::GlobalRenderFrameHostId frame_id, content::GlobalRenderFrameHostId frame_id,
@ -574,14 +584,13 @@ void FileSystemAccessPermissionContext::ConfirmSensitiveEntryAccess(
auto after_blocklist_check_callback = base::BindOnce( auto after_blocklist_check_callback = base::BindOnce(
&FileSystemAccessPermissionContext::DidCheckPathAgainstBlocklist, &FileSystemAccessPermissionContext::DidCheckPathAgainstBlocklist,
GetWeakPtr(), origin, path, handle_type, user_action, frame_id); GetWeakPtr(), origin, path_info, handle_type, user_action, frame_id);
CheckPathAgainstBlocklist(path_type, path, handle_type, CheckPathAgainstBlocklist(path_info, handle_type,
std::move(after_blocklist_check_callback)); std::move(after_blocklist_check_callback));
} }
void FileSystemAccessPermissionContext::CheckPathAgainstBlocklist( void FileSystemAccessPermissionContext::CheckPathAgainstBlocklist(
PathType path_type, const content::PathInfo& path_info,
const base::FilePath& path,
HandleType handle_type, HandleType handle_type,
base::OnceCallback<void(bool)> callback) { base::OnceCallback<void(bool)> callback) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
@ -590,7 +599,7 @@ void FileSystemAccessPermissionContext::CheckPathAgainstBlocklist(
// blocked directories based on that, but that doesn't work well. Instead we // blocked directories based on that, but that doesn't work well. Instead we
// should have a separate Chrome OS only code path to block for example the // should have a separate Chrome OS only code path to block for example the
// root of certain external file systems. // root of certain external file systems.
if (path_type == PathType::kExternal) { if (path_info.type == content::PathType::kExternal) {
std::move(callback).Run(/*should_block=*/false); std::move(callback).Run(/*should_block=*/false);
return; return;
} }
@ -601,7 +610,8 @@ void FileSystemAccessPermissionContext::CheckPathAgainstBlocklist(
base::ThreadPool::PostTaskAndReplyWithResult( base::ThreadPool::PostTaskAndReplyWithResult(
FROM_HERE, {base::MayBlock(), base::TaskPriority::USER_VISIBLE}, FROM_HERE, {base::MayBlock(), base::TaskPriority::USER_VISIBLE},
base::BindOnce(&ShouldBlockAccessToPath, path, handle_type, extra_rules), base::BindOnce(&ShouldBlockAccessToPath, path_info.path, handle_type,
extra_rules),
std::move(callback)); std::move(callback));
} }
@ -628,7 +638,7 @@ void FileSystemAccessPermissionContext::OnRestrictedPathResult(
void FileSystemAccessPermissionContext::DidCheckPathAgainstBlocklist( void FileSystemAccessPermissionContext::DidCheckPathAgainstBlocklist(
const url::Origin& origin, const url::Origin& origin,
const base::FilePath& path, const content::PathInfo& path_info,
HandleType handle_type, HandleType handle_type,
UserAction user_action, UserAction user_action,
content::GlobalRenderFrameHostId frame_id, content::GlobalRenderFrameHostId frame_id,
@ -650,7 +660,7 @@ void FileSystemAccessPermissionContext::DidCheckPathAgainstBlocklist(
gin::DataObjectBuilder(isolate) gin::DataObjectBuilder(isolate)
.Set("origin", origin.GetURL().spec()) .Set("origin", origin.GetURL().spec())
.Set("isDirectory", handle_type == HandleType::kDirectory) .Set("isDirectory", handle_type == HandleType::kDirectory)
.Set("path", path) .Set("path", path_info.path)
.Build(); .Build();
session->Emit( session->Emit(
"file-system-access-restricted", details, "file-system-access-restricted", details,
@ -699,14 +709,14 @@ void FileSystemAccessPermissionContext::MaybeEvictEntries(
void FileSystemAccessPermissionContext::SetLastPickedDirectory( void FileSystemAccessPermissionContext::SetLastPickedDirectory(
const url::Origin& origin, const url::Origin& origin,
const std::string& id, const std::string& id,
const base::FilePath& path, const content::PathInfo& path_info) {
const PathType type) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
// Create an entry into the nested dictionary. // Create an entry into the nested dictionary.
base::Value::Dict entry; base::Value::Dict entry;
entry.Set(kPathKey, base::FilePathToValue(path)); entry.Set(kPathKey, base::FilePathToValue(path_info.path));
entry.Set(kPathTypeKey, static_cast<int>(type)); entry.Set(kPathTypeKey, static_cast<int>(path_info.type));
entry.Set(kDisplayNameKey, path_info.display_name);
entry.Set(kTimestampKey, base::TimeToValue(clock_->Now())); entry.Set(kTimestampKey, base::TimeToValue(clock_->Now()));
auto it = id_pathinfo_map_.find(origin); auto it = id_pathinfo_map_.find(origin);
@ -722,15 +732,14 @@ void FileSystemAccessPermissionContext::SetLastPickedDirectory(
} }
} }
FileSystemAccessPermissionContext::PathInfo content::PathInfo FileSystemAccessPermissionContext::GetLastPickedDirectory(
FileSystemAccessPermissionContext::GetLastPickedDirectory(
const url::Origin& origin, const url::Origin& origin,
const std::string& id) { const std::string& id) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
auto it = id_pathinfo_map_.find(origin); auto it = id_pathinfo_map_.find(origin);
PathInfo path_info; content::PathInfo path_info;
if (it == id_pathinfo_map_.end()) { if (it == id_pathinfo_map_.end()) {
return path_info; return path_info;
} }
@ -740,13 +749,14 @@ FileSystemAccessPermissionContext::GetLastPickedDirectory(
return path_info; return path_info;
} }
auto type_int = auto type_int = entry->FindInt(kPathTypeKey)
entry->FindInt(kPathTypeKey).value_or(static_cast<int>(PathType::kLocal)); .value_or(static_cast<int>(content::PathType::kLocal));
path_info.type = type_int == static_cast<int>(PathType::kExternal) path_info.type = type_int == static_cast<int>(content::PathType::kExternal)
? PathType::kExternal ? content::PathType::kExternal
: PathType::kLocal; : content::PathType::kLocal;
path_info.path = path_info.path =
base::ValueToFilePath(entry->Find(kPathKey)).value_or(base::FilePath()); base::ValueToFilePath(entry->Find(kPathKey)).value_or(base::FilePath());
path_info.display_name = StringOrEmpty(entry->FindString(kDisplayNameKey));
return path_info; return path_info;
} }
@ -812,8 +822,8 @@ std::u16string FileSystemAccessPermissionContext::GetPickerTitle(
void FileSystemAccessPermissionContext::NotifyEntryMoved( void FileSystemAccessPermissionContext::NotifyEntryMoved(
const url::Origin& origin, const url::Origin& origin,
const base::FilePath& old_path, const content::PathInfo& old_path,
const base::FilePath& new_path) { const content::PathInfo& new_path) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
if (old_path == new_path) { if (old_path == new_path) {
@ -834,7 +844,7 @@ void FileSystemAccessPermissionContext::OnFileCreatedFromShowSaveFilePicker(
const storage::FileSystemURL& url) {} const storage::FileSystemURL& url) {}
void FileSystemAccessPermissionContext::CheckPathsAgainstEnterprisePolicy( void FileSystemAccessPermissionContext::CheckPathsAgainstEnterprisePolicy(
std::vector<PathInfo> entries, std::vector<content::PathInfo> entries,
content::GlobalRenderFrameHostId frame_id, content::GlobalRenderFrameHostId frame_id,
EntriesAllowedByEnterprisePolicyCallback callback) { EntriesAllowedByEnterprisePolicyCallback callback) {
std::move(callback).Run(std::move(entries)); std::move(callback).Run(std::move(entries));

View file

@ -53,20 +53,19 @@ class FileSystemAccessPermissionContext
// content::FileSystemAccessPermissionContext: // content::FileSystemAccessPermissionContext:
scoped_refptr<content::FileSystemAccessPermissionGrant> scoped_refptr<content::FileSystemAccessPermissionGrant>
GetReadPermissionGrant(const url::Origin& origin, GetReadPermissionGrant(const url::Origin& origin,
const base::FilePath& path, const content::PathInfo& path,
HandleType handle_type, HandleType handle_type,
UserAction user_action) override; UserAction user_action) override;
scoped_refptr<content::FileSystemAccessPermissionGrant> scoped_refptr<content::FileSystemAccessPermissionGrant>
GetWritePermissionGrant(const url::Origin& origin, GetWritePermissionGrant(const url::Origin& origin,
const base::FilePath& path, const content::PathInfo& path,
HandleType handle_type, HandleType handle_type,
UserAction user_action) override; UserAction user_action) override;
void ConfirmSensitiveEntryAccess( void ConfirmSensitiveEntryAccess(
const url::Origin& origin, const url::Origin& origin,
PathType path_type, const content::PathInfo& path,
const base::FilePath& path,
HandleType handle_type, HandleType handle_type,
UserAction user_action, UserAction user_action,
content::GlobalRenderFrameHostId frame_id, content::GlobalRenderFrameHostId frame_id,
@ -85,10 +84,9 @@ class FileSystemAccessPermissionContext
void SetLastPickedDirectory(const url::Origin& origin, void SetLastPickedDirectory(const url::Origin& origin,
const std::string& id, const std::string& id,
const base::FilePath& path, const content::PathInfo& path) override;
const PathType type) override;
PathInfo GetLastPickedDirectory(const url::Origin& origin, content::PathInfo GetLastPickedDirectory(const url::Origin& origin,
const std::string& id) override; const std::string& id) override;
base::FilePath GetWellKnownDirectoryPath( base::FilePath GetWellKnownDirectoryPath(
@ -99,15 +97,15 @@ class FileSystemAccessPermissionContext
const blink::mojom::FilePickerOptionsPtr& options) override; const blink::mojom::FilePickerOptionsPtr& options) override;
void NotifyEntryMoved(const url::Origin& origin, void NotifyEntryMoved(const url::Origin& origin,
const base::FilePath& old_path, const content::PathInfo& old_path,
const base::FilePath& new_path) override; const content::PathInfo& new_path) override;
void OnFileCreatedFromShowSaveFilePicker( void OnFileCreatedFromShowSaveFilePicker(
const GURL& file_picker_binding_context, const GURL& file_picker_binding_context,
const storage::FileSystemURL& url) override; const storage::FileSystemURL& url) override;
void CheckPathsAgainstEnterprisePolicy( void CheckPathsAgainstEnterprisePolicy(
std::vector<PathInfo> entries, std::vector<content::PathInfo> entries,
content::GlobalRenderFrameHostId frame_id, content::GlobalRenderFrameHostId frame_id,
EntriesAllowedByEnterprisePolicyCallback callback) override; EntriesAllowedByEnterprisePolicyCallback callback) override;
@ -135,12 +133,11 @@ class FileSystemAccessPermissionContext
void PermissionGrantDestroyed(PermissionGrantImpl* grant); void PermissionGrantDestroyed(PermissionGrantImpl* grant);
void CheckPathAgainstBlocklist(PathType path_type, void CheckPathAgainstBlocklist(const content::PathInfo& path,
const base::FilePath& path,
HandleType handle_type, HandleType handle_type,
base::OnceCallback<void(bool)> callback); base::OnceCallback<void(bool)> callback);
void DidCheckPathAgainstBlocklist(const url::Origin& origin, void DidCheckPathAgainstBlocklist(const url::Origin& origin,
const base::FilePath& path, const content::PathInfo& path,
HandleType handle_type, HandleType handle_type,
UserAction user_action, UserAction user_action,
content::GlobalRenderFrameHostId frame_id, content::GlobalRenderFrameHostId frame_id,

View file

@ -32,11 +32,12 @@ bool IsDebuggingNotifications() {
} }
bool SaveIconToPath(const SkBitmap& bitmap, const base::FilePath& path) { bool SaveIconToPath(const SkBitmap& bitmap, const base::FilePath& path) {
std::vector<unsigned char> png_data; std::optional<std::vector<uint8_t>> png_data =
if (!gfx::PNGCodec::EncodeBGRASkBitmap(bitmap, false, &png_data)) gfx::PNGCodec::EncodeBGRASkBitmap(bitmap, false);
if (!png_data.has_value())
return false; return false;
return base::WriteFile(path, png_data); return base::WriteFile(path, png_data.value());
} }
} // namespace } // namespace

View file

@ -244,8 +244,7 @@ gfx::Image Clipboard::ReadImage(gin_helper::Arguments* args) {
base::BindOnce( base::BindOnce(
[](std::optional<gfx::Image>* image, base::RepeatingClosure cb, [](std::optional<gfx::Image>* image, base::RepeatingClosure cb,
const std::vector<uint8_t>& result) { const std::vector<uint8_t>& result) {
SkBitmap bitmap; SkBitmap bitmap = gfx::PNGCodec::Decode(result);
gfx::PNGCodec::Decode(result.data(), result.size(), &bitmap);
image->emplace(gfx::Image::CreateFrom1xBitmap(bitmap)); image->emplace(gfx::Image::CreateFrom1xBitmap(bitmap));
std::move(cb).Run(); std::move(cb).Run();
}, },

View file

@ -238,10 +238,12 @@ v8::Local<v8::Value> NativeImage::ToPNG(gin::Arguments* args) {
const SkBitmap bitmap = const SkBitmap bitmap =
image_.AsImageSkia().GetRepresentation(scale_factor).GetBitmap(); image_.AsImageSkia().GetRepresentation(scale_factor).GetBitmap();
std::vector<unsigned char> encoded; std::optional<std::vector<uint8_t>> encoded =
gfx::PNGCodec::EncodeBGRASkBitmap(bitmap, false, &encoded); gfx::PNGCodec::EncodeBGRASkBitmap(bitmap, false);
const char* data = reinterpret_cast<char*>(encoded.data()); if (!encoded.has_value())
size_t size = encoded.size(); return node::Buffer::New(args->isolate(), 0).ToLocalChecked();
const char* data = reinterpret_cast<char*>(encoded->data());
size_t size = encoded->size();
return node::Buffer::Copy(args->isolate(), data, size).ToLocalChecked(); return node::Buffer::Copy(args->isolate(), data, size).ToLocalChecked();
} }
@ -265,13 +267,13 @@ v8::Local<v8::Value> NativeImage::ToBitmap(gin::Arguments* args) {
} }
v8::Local<v8::Value> NativeImage::ToJPEG(v8::Isolate* isolate, int quality) { v8::Local<v8::Value> NativeImage::ToJPEG(v8::Isolate* isolate, int quality) {
std::vector<unsigned char> output; std::optional<std::vector<uint8_t>> encoded_image =
gfx::JPEG1xEncodedDataFromImage(image_, quality, &output); gfx::JPEG1xEncodedDataFromImage(image_, quality);
if (output.empty()) if (!encoded_image.has_value())
return node::Buffer::New(isolate, 0).ToLocalChecked(); return node::Buffer::New(isolate, 0).ToLocalChecked();
return node::Buffer::Copy(isolate, return node::Buffer::Copy(
reinterpret_cast<const char*>(&output.front()), isolate, reinterpret_cast<const char*>(&encoded_image->front()),
output.size()) encoded_image->size())
.ToLocalChecked(); .ToLocalChecked();
} }

View file

@ -21,28 +21,31 @@
#include "shell/common/gin_helper/dictionary.h" #include "shell/common/gin_helper/dictionary.h"
#include "third_party/blink/public/common/context_menu_data/untrustworthy_context_menu_params.h" #include "third_party/blink/public/common/context_menu_data/untrustworthy_context_menu_params.h"
#include "third_party/blink/public/mojom/permissions/permission_status.mojom.h" #include "third_party/blink/public/mojom/permissions/permission_status.mojom.h"
#include "ui/base/mojom/menu_source_type.mojom.h"
#include "ui/events/keycodes/dom/keycode_converter.h" #include "ui/events/keycodes/dom/keycode_converter.h"
#include "ui/events/keycodes/keyboard_code_conversion.h" #include "ui/events/keycodes/keyboard_code_conversion.h"
namespace gin { namespace gin {
static constexpr auto MenuSourceTypes = static constexpr auto MenuSourceTypes =
base::MakeFixedFlatMap<std::string_view, ui::MenuSourceType>({ base::MakeFixedFlatMap<std::string_view, ui::mojom::MenuSourceType>({
{"adjustSelection", ui::MENU_SOURCE_ADJUST_SELECTION}, {"adjustSelection", ui::mojom::MenuSourceType::kAdjustSelection},
{"adjustSelectionReset", ui::MENU_SOURCE_ADJUST_SELECTION_RESET}, {"adjustSelectionReset",
{"keyboard", ui::MENU_SOURCE_KEYBOARD}, ui::mojom::MenuSourceType::kAdjustSelectionReset},
{"longPress", ui::MENU_SOURCE_LONG_PRESS}, {"keyboard", ui::mojom::MenuSourceType::kKeyboard},
{"longTap", ui::MENU_SOURCE_LONG_TAP}, {"longPress", ui::mojom::MenuSourceType::kLongPress},
{"mouse", ui::MENU_SOURCE_MOUSE}, {"longTap", ui::mojom::MenuSourceType::kLongTap},
{"none", ui::MENU_SOURCE_NONE}, {"mouse", ui::mojom::MenuSourceType::kMouse},
{"stylus", ui::MENU_SOURCE_STYLUS}, {"none", ui::mojom::MenuSourceType::kNone},
{"touch", ui::MENU_SOURCE_TOUCH}, {"stylus", ui::mojom::MenuSourceType::kStylus},
{"touchHandle", ui::MENU_SOURCE_TOUCH_HANDLE}, {"touch", ui::mojom::MenuSourceType::kTouch},
{"touchMenu", ui::MENU_SOURCE_TOUCH_EDIT_MENU}, {"touchHandle", ui::mojom::MenuSourceType::kTouchHandle},
{"touchMenu", ui::mojom::MenuSourceType::kTouchEditMenu},
}); });
// let us know when upstream changes & we need to update MenuSourceTypes // let us know when upstream changes & we need to update MenuSourceTypes
static_assert(std::size(MenuSourceTypes) == ui::MENU_SOURCE_TYPE_LAST + 1U); static_assert(std::size(MenuSourceTypes) ==
static_cast<int32_t>(ui::mojom::MenuSourceType::kMaxValue) + 1);
// static // static
v8::Local<v8::Value> Converter<ui::MenuSourceType>::ToV8( v8::Local<v8::Value> Converter<ui::MenuSourceType>::ToV8(

View file

@ -58,8 +58,8 @@ float GetScaleFactorFromPath(const base::FilePath& path) {
bool AddImageSkiaRepFromPNG(gfx::ImageSkia* image, bool AddImageSkiaRepFromPNG(gfx::ImageSkia* image,
const base::span<const uint8_t> data, const base::span<const uint8_t> data,
double scale_factor) { double scale_factor) {
SkBitmap bitmap; SkBitmap bitmap = gfx::PNGCodec::Decode(data);
if (!gfx::PNGCodec::Decode(data.data(), data.size(), &bitmap)) if (bitmap.isNull())
return false; return false;
image->AddRepresentation(gfx::ImageSkiaRep(bitmap, scale_factor)); image->AddRepresentation(gfx::ImageSkiaRep(bitmap, scale_factor));
@ -69,8 +69,8 @@ bool AddImageSkiaRepFromPNG(gfx::ImageSkia* image,
bool AddImageSkiaRepFromJPEG(gfx::ImageSkia* image, bool AddImageSkiaRepFromJPEG(gfx::ImageSkia* image,
const base::span<const uint8_t> data, const base::span<const uint8_t> data,
double scale_factor) { double scale_factor) {
auto bitmap = gfx::JPEGCodec::Decode(data.data(), data.size()); auto bitmap = gfx::JPEGCodec::Decode(data);
if (!bitmap) if (bitmap.isNull())
return false; return false;
// `JPEGCodec::Decode()` doesn't tell `SkBitmap` instance it creates // `JPEGCodec::Decode()` doesn't tell `SkBitmap` instance it creates
@ -80,9 +80,9 @@ bool AddImageSkiaRepFromJPEG(gfx::ImageSkia* image,
// TODO(alexeykuzmin): This workaround should be removed // TODO(alexeykuzmin): This workaround should be removed
// when the `JPEGCodec::Decode()` code is fixed. // when the `JPEGCodec::Decode()` code is fixed.
// See https://github.com/electron/electron/issues/11294. // See https://github.com/electron/electron/issues/11294.
bitmap->setAlphaType(SkAlphaType::kOpaque_SkAlphaType); bitmap.setAlphaType(SkAlphaType::kOpaque_SkAlphaType);
image->AddRepresentation(gfx::ImageSkiaRep(*bitmap, scale_factor)); image->AddRepresentation(gfx::ImageSkiaRep(bitmap, scale_factor));
return true; return true;
} }