From a2bb5069a51123340be9df62ec02a3e54fafbca4 Mon Sep 17 00:00:00 2001 From: "trop[bot]" <37223003+trop[bot]@users.noreply.github.com> Date: Mon, 3 Nov 2025 13:18:33 +0100 Subject: [PATCH] chore: bump chromium to 144.0.7500.0 (40-x-y) (#48745) * chore: bump chromium in DEPS to 144.0.7500.0 Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> * chore: fixup patch indices Co-authored-by: Shelley Vohr * 7088768: Reland "download reclient only for chromeos by default" https://chromium-review.googlesource.com/c/chromium/src/+/7088768 Co-authored-by: Shelley Vohr * Revert "7088768: Reland "download reclient only for chromeos by default"" This reverts commit 149d9fc92e395914c086f130a6cfbfc9b405a997. Co-authored-by: John Kleinschmidt * build: explicitly disable reclient Co-authored-by: John Kleinschmidt * 7013355: [api] Remove deprecated PropertyCallbackInfo::Holder() https://chromium-review.googlesource.com/c/v8/v8/+/7013355 Co-authored-by: Shelley Vohr * Enable video picture-in-picture controls update Refs https://chromium-review.googlesource.com/c/chromium/src/+/6701399 Co-authored-by: deepak1556 * fixup! [api] Remove deprecated PropertyCallbackInfo::Holder() Co-authored-by: deepak1556 --------- Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: Shelley Vohr Co-authored-by: John Kleinschmidt Co-authored-by: deepak1556 --- DEPS | 2 +- build/args/all.gn | 3 + patches/chromium/blink_local_frame.patch | 2 +- ..._mojom_interfaces_to_depend_on_blink.patch | 4 +- ..._depend_on_packed_resource_integrity.patch | 12 +- ...ameter_in_script_lifecycle_observers.patch | 10 +- ...ther_in_electron_views_and_delegates.patch | 2 +- .../custom_protocols_plzserviceworker.patch | 8 +- ...moothing_css_rule_and_blink_painting.patch | 6 +- ...allback_for_sync_and_async_clipboard.patch | 2 +- ..._file_existence_before_setting_mtime.patch | 2 +- ...ding_non-standard_schemes_in_iframes.patch | 4 +- .../chromium/fix_export_zlib_symbols.patch | 2 +- ...x_harden_blink_scriptstate_maybefrom.patch | 10 +- ...ingshelper_behind_branding_buildflag.patch | 4 +- ...from_localframe_requestexecutescript.patch | 6 +- ..._avoid_private_macos_api_usage.patch.patch | 14 +- patches/chromium/picture-in-picture.patch | 168 +++++++++++++-- ..._electron_permissiontypes_into_blink.patch | 2 +- ...windowtreehostwin_window_enlargement.patch | 4 +- patches/nan/.patches | 1 + ...precated_propertycallbackinfo_holder.patch | 199 ++++++++++++++++++ 22 files changed, 405 insertions(+), 62 deletions(-) create mode 100644 patches/nan/fix_remove_deprecated_propertycallbackinfo_holder.patch diff --git a/DEPS b/DEPS index 9dab0e707a..8b6bf58f72 100644 --- a/DEPS +++ b/DEPS @@ -2,7 +2,7 @@ gclient_gn_args_from = 'src' vars = { 'chromium_version': - '143.0.7499.0', + '144.0.7500.0', 'node_version': 'v22.20.0', 'nan_version': diff --git a/build/args/all.gn b/build/args/all.gn index b62e24774d..bf4c76abb5 100644 --- a/build/args/all.gn +++ b/build/args/all.gn @@ -75,3 +75,6 @@ enable_linux_installer = false # Disable "Save to Drive" feature in PDF viewer enable_pdf_save_to_drive = false + +# Explictly disable use_reclient until reclient is completely removed +use_reclient = false diff --git a/patches/chromium/blink_local_frame.patch b/patches/chromium/blink_local_frame.patch index 0cdb9b3279..c9fb7de66f 100644 --- a/patches/chromium/blink_local_frame.patch +++ b/patches/chromium/blink_local_frame.patch @@ -49,7 +49,7 @@ index cdb5b9246087b5678cf6a0f2713f6238dafc13de..7efbe7524c5ddd3785fff0e2d8901f93 // its owning reference back to our owning LocalFrame. client_->Detached(type); diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc -index 0b8972e0ab8ff854fc169b39d762790299f7bf9c..fdbafb9177d345181339fcdf2d95aebbd8665a49 100644 +index ad61f3b044e8ce7591cfe7484af8e3b0c7705673..f42b5f8c7676cda5d73ee035e18165acabb186f3 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc @@ -747,10 +747,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { diff --git a/patches/chromium/build_allow_electron_mojom_interfaces_to_depend_on_blink.patch b/patches/chromium/build_allow_electron_mojom_interfaces_to_depend_on_blink.patch index 611b5b5feb..ce3658f769 100644 --- a/patches/chromium/build_allow_electron_mojom_interfaces_to_depend_on_blink.patch +++ b/patches/chromium/build_allow_electron_mojom_interfaces_to_depend_on_blink.patch @@ -10,10 +10,10 @@ Needed for: 2) //electron/shell/common:web_contents_utility diff --git a/content/public/common/BUILD.gn b/content/public/common/BUILD.gn -index b6511498e08e6d0a280b89175fcfdb61c7e40df4..e214d7ea5e7108baf9f9910d6b44deff587914c2 100644 +index e463b4c63105d021da2467844c8371eec6b8a836..bd81d75d735f997bf6aa9133e142b50759084b47 100644 --- a/content/public/common/BUILD.gn +++ b/content/public/common/BUILD.gn -@@ -370,6 +370,8 @@ mojom("interfaces") { +@@ -371,6 +371,8 @@ mojom("interfaces") { "//content/common/*", "//extensions/common:mojom", "//extensions/common:mojom_blink", diff --git a/patches/chromium/build_do_not_depend_on_packed_resource_integrity.patch b/patches/chromium/build_do_not_depend_on_packed_resource_integrity.patch index f624ad3013..c95e99f875 100644 --- a/patches/chromium/build_do_not_depend_on_packed_resource_integrity.patch +++ b/patches/chromium/build_do_not_depend_on_packed_resource_integrity.patch @@ -33,10 +33,10 @@ index c51468e6fdb46634b5458b387d1c78caf2dd083f..7236611d2a392008f43b1b83ae125e94 "//base", "//build:branding_buildflags", diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn -index 848ddc7610d01dee15e0008e2095d4d0af056ac6..6bbacd81a079e54559989050e38e31b852102e15 100644 +index cc003098ca1338334bce844d3e82351b573a3b93..ddd737d756776d2200da89924699de5087fe768d 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -4829,7 +4829,7 @@ static_library("browser") { +@@ -4833,7 +4833,7 @@ static_library("browser") { ] } @@ -46,10 +46,10 @@ index 848ddc7610d01dee15e0008e2095d4d0af056ac6..6bbacd81a079e54559989050e38e31b8 # than here in :chrome_dll. deps += [ "//chrome:packed_resources_integrity_header" ] diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn -index c0fa565f990a956af43720850ac85451f3c25b8c..bf5e2c0f7e628befdee6e38a6a6dddefea8bce7a 100644 +index 206d205405b06766859abf4f13eb7b65e81667f6..c4138e4c1a03ec6f23a91d19155a70af433a4a89 100644 --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -7585,9 +7585,12 @@ test("unit_tests") { +@@ -7587,9 +7587,12 @@ test("unit_tests") { "//chrome/notification_helper", ] @@ -63,7 +63,7 @@ index c0fa565f990a956af43720850ac85451f3c25b8c..bf5e2c0f7e628befdee6e38a6a6dddef "//chrome//services/util_win:unit_tests", "//chrome/app:chrome_dll_resources", "//chrome/app:win_unit_tests", -@@ -8527,6 +8530,10 @@ test("unit_tests") { +@@ -8530,6 +8533,10 @@ test("unit_tests") { "../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc", ] @@ -74,7 +74,7 @@ index c0fa565f990a956af43720850ac85451f3c25b8c..bf5e2c0f7e628befdee6e38a6a6dddef sources += [ # The importer code is not used on Android. "../common/importer/firefox_importer_utils_unittest.cc", -@@ -8583,7 +8590,6 @@ test("unit_tests") { +@@ -8586,7 +8593,6 @@ test("unit_tests") { # TODO(crbug.com/417513088): Maybe merge with the non-android `deps` declaration above? deps += [ "../browser/screen_ai:screen_ai_install_state", diff --git a/patches/chromium/chore_expose_isolate_parameter_in_script_lifecycle_observers.patch b/patches/chromium/chore_expose_isolate_parameter_in_script_lifecycle_observers.patch index c8865d5b6b..702389f35b 100644 --- a/patches/chromium/chore_expose_isolate_parameter_in_script_lifecycle_observers.patch +++ b/patches/chromium/chore_expose_isolate_parameter_in_script_lifecycle_observers.patch @@ -66,10 +66,10 @@ index 32dfed04e2fd7cd2e60c7cf145d182f4163feb68..c44c488ef90f4ceaada28666f80a5919 void DidChangeScrollOffset() override; blink::WebMediaStreamDeviceObserver* MediaStreamDeviceObserver() override; diff --git a/content/renderer/service_worker/service_worker_context_client.cc b/content/renderer/service_worker/service_worker_context_client.cc -index bf221ce102ea9ca25655f14a7cd90c625799d4b0..c4d81b211016616f6cbbdfcfae6620d4931ce775 100644 +index 37691ecee7a72b2ec47ff575239f628116cf136b..c67e3faf7440514e203e5b15a68fc34525a045a2 100644 --- a/content/renderer/service_worker/service_worker_context_client.cc +++ b/content/renderer/service_worker/service_worker_context_client.cc -@@ -322,6 +322,7 @@ void ServiceWorkerContextClient::WorkerContextStarted( +@@ -318,6 +318,7 @@ void ServiceWorkerContextClient::WorkerContextStarted( } void ServiceWorkerContextClient::WillEvaluateScript( @@ -77,7 +77,7 @@ index bf221ce102ea9ca25655f14a7cd90c625799d4b0..c4d81b211016616f6cbbdfcfae6620d4 v8::Local v8_context) { DCHECK(worker_task_runner_->RunsTasksInCurrentSequence()); start_timing_->script_evaluation_start_time = base::TimeTicks::Now(); -@@ -340,8 +341,8 @@ void ServiceWorkerContextClient::WillEvaluateScript( +@@ -336,8 +337,8 @@ void ServiceWorkerContextClient::WillEvaluateScript( DCHECK(proxy_); GetContentClient()->renderer()->WillEvaluateServiceWorkerOnWorkerThread( @@ -89,10 +89,10 @@ index bf221ce102ea9ca25655f14a7cd90c625799d4b0..c4d81b211016616f6cbbdfcfae6620d4 void ServiceWorkerContextClient::DidEvaluateScript(bool success) { diff --git a/content/renderer/service_worker/service_worker_context_client.h b/content/renderer/service_worker/service_worker_context_client.h -index 2f3ba35491d17aa76f9baf8ba1cd53680a923654..477c6ac5a77c69cc4f062366c52adff3a36bdc76 100644 +index 1f5e24bc38d6ced52e4773236522e9520efc6f6d..a22ca5968fce5e6a0c436ec9b40f0e2f7c1482cf 100644 --- a/content/renderer/service_worker/service_worker_context_client.h +++ b/content/renderer/service_worker/service_worker_context_client.h -@@ -168,7 +168,8 @@ class ServiceWorkerContextClient +@@ -165,7 +165,8 @@ class ServiceWorkerContextClient void WorkerContextStarted( blink::WebServiceWorkerContextProxy* proxy, scoped_refptr worker_task_runner) override; diff --git a/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch b/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch index 785a321a67..4f894ba097 100644 --- a/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch +++ b/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch @@ -10,7 +10,7 @@ Subject: chore: "grandfather in" Electron Views and Delegates 6448510: Lock further access to View::set_owned_by_client(). | https://chromium-review.googlesource.com/c/chromium/src/+/6448510 diff --git a/ui/views/view.h b/ui/views/view.h -index 4fada89e37b9c63f7690fbbdd2ef4ecf86b5d756..73dd5aa59d8d1bb05aaed080e27426cc58da2d61 100644 +index a34494ddd3daf79d12596c56e752692ace0d1ab2..fd4b87226a364b1104b25379f2d87ebeefbb6927 100644 --- a/ui/views/view.h +++ b/ui/views/view.h @@ -81,6 +81,19 @@ class ArcNotificationContentView; diff --git a/patches/chromium/custom_protocols_plzserviceworker.patch b/patches/chromium/custom_protocols_plzserviceworker.patch index c60e951968..c0f92740ba 100644 --- a/patches/chromium/custom_protocols_plzserviceworker.patch +++ b/patches/chromium/custom_protocols_plzserviceworker.patch @@ -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 diff --git a/content/browser/service_worker/service_worker_context_wrapper.cc b/content/browser/service_worker/service_worker_context_wrapper.cc -index cdd2f243082290767abbee39b4e80a67c705a789..7168d496663675455b417f709339aab08aabc9f0 100644 +index cb60c976d469958b6d7dbd69dddc91866744c429..88f1cbc3bc7f3efaae01c88c17fa467175d4f8ea 100644 --- a/content/browser/service_worker/service_worker_context_wrapper.cc +++ b/content/browser/service_worker/service_worker_context_wrapper.cc -@@ -1972,6 +1972,26 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( +@@ -1957,6 +1957,26 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( loader_factory_bundle_info = context()->loader_factory_bundle_for_update_check()->Clone(); @@ -38,7 +38,7 @@ index cdd2f243082290767abbee39b4e80a67c705a789..7168d496663675455b417f709339aab0 if (auto* config = content::WebUIConfigMap::GetInstance().GetConfig( browser_context(), scope)) { // If this is a Service Worker for a WebUI, the WebUI's URLDataSource -@@ -1991,9 +2011,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( +@@ -1976,9 +1996,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( features::kEnableServiceWorkersForChromeScheme) && scope.scheme() == kChromeUIScheme) { config->RegisterURLDataSource(browser_context()); @@ -49,7 +49,7 @@ index cdd2f243082290767abbee39b4e80a67c705a789..7168d496663675455b417f709339aab0 .emplace(kChromeUIScheme, CreateWebUIServiceWorkerLoaderFactory( browser_context(), kChromeUIScheme, base::flat_set())); -@@ -2001,9 +2019,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( +@@ -1986,9 +2004,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( features::kEnableServiceWorkersForChromeUntrusted) && scope.scheme() == kChromeUIUntrustedScheme) { config->RegisterURLDataSource(browser_context()); diff --git a/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch b/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch index 3da9175a20..fb6dbe4d10 100644 --- a/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch +++ b/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch @@ -45,10 +45,10 @@ index e189d584f05f2ce6354c03a9b19f56985df8a15e..41b430e8f2416be098494f5c49fb97ca 'internal-forced-visited-'): internal_visited_order = 0 diff --git a/third_party/blink/renderer/core/css/css_properties.json5 b/third_party/blink/renderer/core/css/css_properties.json5 -index bb84e7fb7845a64a336e95a20a47d32d7f74aa16..4849f6ac85715e816930ae35fdd9d2815165a133 100644 +index 9bf6537f620594d6fe1e14e2ef32bc20b6127b3d..e90341e484c40df23974c17de8f5212b0de26029 100644 --- a/third_party/blink/renderer/core/css/css_properties.json5 +++ b/third_party/blink/renderer/core/css/css_properties.json5 -@@ -9074,6 +9074,26 @@ +@@ -9057,6 +9057,26 @@ property_methods: ["ParseShorthand", "CSSValueFromComputedStyleInternal"], }, @@ -312,7 +312,7 @@ index 1d6b8160e8db2a94ee61ed41ac9a74db5b1bfb17..373bcd30c6a4526262912021aaf2b560 auto DrawAsSinglePath = [&]() { diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -index 02815bb434a54acaacbd11e408fb26564bb5d0a6..e47d5eba72cd3e08675eea76927e4efd28b43a31 100644 +index 43474abcc45706874b4d2733bff468b2b79f5d0f..e8e341a58cb86526361d57c5d4753f76bfac5de6 100644 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 @@ -214,6 +214,10 @@ diff --git a/patches/chromium/feat_separate_content_settings_callback_for_sync_and_async_clipboard.patch b/patches/chromium/feat_separate_content_settings_callback_for_sync_and_async_clipboard.patch index f0131d2947..7f34151a24 100644 --- a/patches/chromium/feat_separate_content_settings_callback_for_sync_and_async_clipboard.patch +++ b/patches/chromium/feat_separate_content_settings_callback_for_sync_and_async_clipboard.patch @@ -20,7 +20,7 @@ This patch will be removed when the deprecated sync api support is removed. diff --git a/components/permissions/permission_util.cc b/components/permissions/permission_util.cc -index fc516272be02a3dac1086e4aaf2015dc946cc3c2..86b8df2b23dc975a6db87f04005cb105054305b0 100644 +index c9b607c9bd09d43099a1704d5d4139c64e4beac4..18ad7ed73b0ed4de158519c01342f0bfd7cc3666 100644 --- a/components/permissions/permission_util.cc +++ b/components/permissions/permission_util.cc @@ -536,6 +536,7 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe( diff --git a/patches/chromium/fix_check_for_file_existence_before_setting_mtime.patch b/patches/chromium/fix_check_for_file_existence_before_setting_mtime.patch index 37b0f1ff31..33ca2f1da2 100644 --- a/patches/chromium/fix_check_for_file_existence_before_setting_mtime.patch +++ b/patches/chromium/fix_check_for_file_existence_before_setting_mtime.patch @@ -8,7 +8,7 @@ Check for broken links by confirming the file exists before setting its utime. This patch should be upstreamed & removed. diff --git a/tools/clang/scripts/update.py b/tools/clang/scripts/update.py -index bcf4c9b192234aa1d470662e4036ac7a23ce2262..724ccef88dc6d798bb948d3fc89a84640d863174 100755 +index f2a9172815d80e6a9a70d7775eec6fdddd925461..54f78924eb09abf19d19c698e4c37f5ec3dc8249 100755 --- a/tools/clang/scripts/update.py +++ b/tools/clang/scripts/update.py @@ -201,10 +201,9 @@ def DownloadAndUnpack(url, output_dir, path_prefixes=None, is_known_zip=False): diff --git a/patches/chromium/fix_crash_loading_non-standard_schemes_in_iframes.patch b/patches/chromium/fix_crash_loading_non-standard_schemes_in_iframes.patch index 1d02f796c1..c6be33e906 100644 --- a/patches/chromium/fix_crash_loading_non-standard_schemes_in_iframes.patch +++ b/patches/chromium/fix_crash_loading_non-standard_schemes_in_iframes.patch @@ -28,10 +28,10 @@ The patch should be removed in favor of either: Upstream bug https://bugs.chromium.org/p/chromium/issues/detail?id=1081397. diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc -index 5f6fb36d9302e557ff56f770ff70b091ade0f53a..81e91f51d119b2e02f432c2e7ae81f6d118811b3 100644 +index 3624c9c96f3ac526e99fb09c378144439c707442..fd818f40e9c3e1efe15dcbb369270a27e2f50483 100644 --- a/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc -@@ -11454,6 +11454,11 @@ url::Origin NavigationRequest::GetOriginForURLLoaderFactoryUnchecked() { +@@ -11466,6 +11466,11 @@ url::Origin NavigationRequest::GetOriginForURLLoaderFactoryUnchecked() { target_rph_id); } diff --git a/patches/chromium/fix_export_zlib_symbols.patch b/patches/chromium/fix_export_zlib_symbols.patch index 74663cd426..39d76d3b68 100644 --- a/patches/chromium/fix_export_zlib_symbols.patch +++ b/patches/chromium/fix_export_zlib_symbols.patch @@ -6,7 +6,7 @@ Subject: fix: export zlib symbols This patch sets ZLIB_DLL so that we properly export zlib symbols. diff --git a/third_party/zlib/BUILD.gn b/third_party/zlib/BUILD.gn -index 3d0735452a66d4213d1c4cf7c36cd36b3bf1c6f8..3dc1b24fe5f25b0a8b00d1a7918f518f0bad091d 100644 +index afd3e8cc0f38e95b3b04835b46bd1197a63b4ed1..652fa32d49de9f0c73777c0d4d99421f52e16b38 100644 --- a/third_party/zlib/BUILD.gn +++ b/third_party/zlib/BUILD.gn @@ -333,6 +333,10 @@ component("zlib") { diff --git a/patches/chromium/fix_harden_blink_scriptstate_maybefrom.patch b/patches/chromium/fix_harden_blink_scriptstate_maybefrom.patch index b58b7d49f5..ae12112f6a 100644 --- a/patches/chromium/fix_harden_blink_scriptstate_maybefrom.patch +++ b/patches/chromium/fix_harden_blink_scriptstate_maybefrom.patch @@ -56,7 +56,7 @@ index cecf528475cb832ed1876381878eade582bc83d6..71308b2d963c2d083328aad6be356dc5 enum EmbedderDataTag : uint16_t { diff --git a/third_party/blink/renderer/platform/bindings/script_state.cc b/third_party/blink/renderer/platform/bindings/script_state.cc -index 7c602990a3f9a3083308d282fe79bf858b642cdf..f8ee61b8b2a45371d259717215a1fb4511514567 100644 +index 8b6522c9299bef5ab766795b64a1ba30bc382a12..54d981405df5edab4695dfd01bb6a7b7dd8b7b3a 100644 --- a/third_party/blink/renderer/platform/bindings/script_state.cc +++ b/third_party/blink/renderer/platform/bindings/script_state.cc @@ -14,6 +14,12 @@ namespace blink { @@ -72,7 +72,7 @@ index 7c602990a3f9a3083308d282fe79bf858b642cdf..f8ee61b8b2a45371d259717215a1fb45 // static void ScriptState::SetCreateCallback(CreateCallback create_callback) { DCHECK(create_callback); -@@ -39,6 +45,10 @@ ScriptState::ScriptState(v8::Local context, +@@ -40,6 +46,10 @@ ScriptState::ScriptState(v8::Local context, context_.SetWeak(this, &OnV8ContextCollectedCallback); context->SetAlignedPointerInEmbedderData(kV8ContextPerContextDataIndex, this, gin::kBlinkScriptState); @@ -83,7 +83,7 @@ index 7c602990a3f9a3083308d282fe79bf858b642cdf..f8ee61b8b2a45371d259717215a1fb45 RendererResourceCoordinator::Get()->OnScriptStateCreated(this, execution_context); } -@@ -82,6 +92,10 @@ void ScriptState::DissociateContext() { +@@ -83,6 +93,10 @@ void ScriptState::DissociateContext() { // Cut the reference from V8 context to ScriptState. GetContext()->SetAlignedPointerInEmbedderData( kV8ContextPerContextDataIndex, nullptr, gin::kBlinkScriptState); @@ -95,7 +95,7 @@ index 7c602990a3f9a3083308d282fe79bf858b642cdf..f8ee61b8b2a45371d259717215a1fb45 // Cut the reference from ScriptState to V8 context. diff --git a/third_party/blink/renderer/platform/bindings/script_state.h b/third_party/blink/renderer/platform/bindings/script_state.h -index f06885f429a395b5c2eb55c89803837b550d765c..1d64099b32c2a9a0d68e8b5317d17e13789dc299 100644 +index 5ccdf26cead17031d510589b74288cbe79692779..0bc2fdbf8e70d53a49794defe8b4a3d1d5a501cd 100644 --- a/third_party/blink/renderer/platform/bindings/script_state.h +++ b/third_party/blink/renderer/platform/bindings/script_state.h @@ -6,6 +6,7 @@ @@ -122,7 +122,7 @@ index f06885f429a395b5c2eb55c89803837b550d765c..1d64099b32c2a9a0d68e8b5317d17e13 ScriptState* script_state = static_cast(context->GetAlignedPointerFromEmbedderData( isolate, kV8ContextPerContextDataIndex, gin::kBlinkScriptState)); -@@ -267,6 +277,14 @@ class PLATFORM_EXPORT ScriptState : public GarbageCollected { +@@ -270,6 +280,14 @@ class PLATFORM_EXPORT ScriptState : public GarbageCollected { static_cast(gin::kPerContextDataStartIndex) + static_cast(gin::kEmbedderBlink); diff --git a/patches/chromium/fix_move_autopipsettingshelper_behind_branding_buildflag.patch b/patches/chromium/fix_move_autopipsettingshelper_behind_branding_buildflag.patch index b34e4e6eb1..670f7c0db5 100644 --- a/patches/chromium/fix_move_autopipsettingshelper_behind_branding_buildflag.patch +++ b/patches/chromium/fix_move_autopipsettingshelper_behind_branding_buildflag.patch @@ -83,10 +83,10 @@ index de8cfaabed0e4ed3db9b55729f7ea22014f63dd2..45df203c236ed0f36f079ad0dcbe98e9 PictureInPictureOcclusionTracker* diff --git a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc -index f737adbdc968e659cf5ba59e6cd5fd5fa093edff..0c9d713a51a15abdec331f8991bfa6222984afec 100644 +index c204274499a520aeeb2aaaad12e4aafd43738d23..56afbbf55148b5077253c0189bf6444c2daaf7ba 100644 --- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc +++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc -@@ -474,11 +474,13 @@ std::unique_ptr VideoOverlayWindowViews::Create( +@@ -476,11 +476,13 @@ std::unique_ptr VideoOverlayWindowViews::Create( #endif // BUILDFLAG(IS_WIN) diff --git a/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch b/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch index 84ae6b49d2..4941eb3b6b 100644 --- a/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch +++ b/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch @@ -59,10 +59,10 @@ index cba373664bec3a32abad6fe0396bd67b53b7e67f..a54f1b3351efd2d8f324436f7f35cd43 #endif // THIRD_PARTY_BLINK_PUBLIC_WEB_WEB_SCRIPT_EXECUTION_CALLBACK_H_ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc -index fdbafb9177d345181339fcdf2d95aebbd8665a49..56472f526e751790d9163a3445d5ac15b86e187d 100644 +index f42b5f8c7676cda5d73ee035e18165acabb186f3..7ff305ce80f243ce4ab0844321644908ab6addb9 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc -@@ -3188,6 +3188,7 @@ void LocalFrame::RequestExecuteScript( +@@ -3190,6 +3190,7 @@ void LocalFrame::RequestExecuteScript( mojom::blink::EvaluationTiming evaluation_timing, mojom::blink::LoadEventBlockingOption blocking_option, WebScriptExecutionCallback callback, @@ -70,7 +70,7 @@ index fdbafb9177d345181339fcdf2d95aebbd8665a49..56472f526e751790d9163a3445d5ac15 BackForwardCacheAware back_forward_cache_aware, mojom::blink::WantResultOption want_result_option, mojom::blink::PromiseResultOption promise_behavior) { -@@ -3245,7 +3246,7 @@ void LocalFrame::RequestExecuteScript( +@@ -3247,7 +3248,7 @@ void LocalFrame::RequestExecuteScript( PausableScriptExecutor::CreateAndRun( script_state, std::move(script_sources), execute_script_policy, user_gesture, evaluation_timing, blocking_option, want_result_option, diff --git a/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch b/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch index b0faed3c0b..ec27e06dc0 100644 --- a/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch +++ b/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch @@ -35,7 +35,7 @@ system font by checking if it's kCTFontPriorityAttribute is set to system priority. diff --git a/base/BUILD.gn b/base/BUILD.gn -index 2edc8252e3e83ab0238383091ebea5a21df3186f..3bbea6f7c13914e8f6e791cd77cab82b1eed51dd 100644 +index 7aa2eeb7769e7be0d58f03d35445e3b5564e2718..af777c45221b5db1b2f5699101ad61eed99fc40e 100644 --- a/base/BUILD.gn +++ b/base/BUILD.gn @@ -1069,6 +1069,7 @@ component("base") { @@ -581,7 +581,7 @@ index e51fd827f7afc01a5189737f86a2414627a6546e..bb50f03ba5622c2bfb96bc75d145f471 return kAttributes; } diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn -index 548abd4a6857cc47691c276b4b11cb34eadedcdf..3a4ca077145fcd65fcb7ca1be85beabda0112e72 100644 +index 4c555d3c077216fd25d45b5f9727ff3e20b80e83..648cfefa2cdf87524dc4bb12f8d8b37419921ef9 100644 --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn @@ -344,6 +344,7 @@ source_set("browser") { @@ -702,10 +702,10 @@ index ea86cb14edf163b02a2b0fda0ab3fb6245edd717..9a507a70493e5a648a25968f917a7829 /////////////////////////////////////////////////////////////////////////////// diff --git a/content/common/BUILD.gn b/content/common/BUILD.gn -index 19c948e949386a1678767cbc606304e65400c507..9394e841d84593ea846b785cffe2ab06efffd7d1 100644 +index f57ce1a0430df7692be55685e79121ed604daf2a..3fbc26fb179a64a2f1eab027a05b16241c185b28 100644 --- a/content/common/BUILD.gn +++ b/content/common/BUILD.gn -@@ -274,6 +274,7 @@ source_set("common") { +@@ -273,6 +273,7 @@ source_set("common") { "//ui/shell_dialogs", "//url", "//url/ipc:url_ipc", @@ -796,7 +796,7 @@ index a1068589ad844518038ee7bc15a3de9bc5cba525..1ff781c49f086ec8015c7d3c44567dbe } // namespace content diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn -index dfd3674692bc984821b52f1d410c1fa2ca56c42e..25dd06214e3aea73ebe556f9b8498ef8a63e42d6 100644 +index 25638e35e38d59adb261185e1387256ba16fc9bd..2b2f7e003bacea00a1421ce3bedf71747b567928 100644 --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn @@ -703,6 +703,7 @@ static_library("test_support") { @@ -1395,7 +1395,7 @@ index eb81a70e4d5d5cd3e6ae9b45f8cd1c795ea76c51..9921ccb10d3455600eddd85f77f10228 } // namespace sandbox diff --git a/third_party/blink/renderer/core/BUILD.gn b/third_party/blink/renderer/core/BUILD.gn -index ac8db428b19dc3d442dc668b4e601d56f7b48c61..c6dfcdb6ac8ccc145eaad4087677add1afb217e1 100644 +index e54ba53ed4866e568ae5c2dfe65e72adfe253e03..07d046634534efb28ee4584dd1b11678f7473e8f 100644 --- a/third_party/blink/renderer/core/BUILD.gn +++ b/third_party/blink/renderer/core/BUILD.gn @@ -428,6 +428,7 @@ component("core") { @@ -1407,7 +1407,7 @@ index ac8db428b19dc3d442dc668b4e601d56f7b48c61..c6dfcdb6ac8ccc145eaad4087677add1 if (is_mac) { diff --git a/third_party/blink/renderer/core/editing/build.gni b/third_party/blink/renderer/core/editing/build.gni -index c771cee7be34f36521de34ef893ee578b648a8c8..b0bd447b848bfdb7a9ff9cd98ba95574cb846cc2 100644 +index 4f04476e9175bae9e89eb9ea4316bffe49a9eb91..e77615c7b26518f4930ac1b004b413173fa0f46b 100644 --- a/third_party/blink/renderer/core/editing/build.gni +++ b/third_party/blink/renderer/core/editing/build.gni @@ -362,10 +362,14 @@ blink_core_sources_editing = [ diff --git a/patches/chromium/picture-in-picture.patch b/patches/chromium/picture-in-picture.patch index fba78174c9..8539005155 100644 --- a/patches/chromium/picture-in-picture.patch +++ b/patches/chromium/picture-in-picture.patch @@ -38,7 +38,7 @@ index 85df555841ac0d32d2f097547c9991cecf0f4b1a..7a108339448fad3105e87c9d9af678c2 ui::ImageModel::FromVectorIcon(*icon, kColorPipWindowForeground, kCloseButtonIconSize)); diff --git a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc -index 3d9673db6bf535d3bc9518e7981ba8e84f4485bc..f737adbdc968e659cf5ba59e6cd5fd5fa093edff 100644 +index 3d9673db6bf535d3bc9518e7981ba8e84f4485bc..c204274499a520aeeb2aaaad12e4aafd43738d23 100644 --- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc +++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc @@ -18,12 +18,16 @@ @@ -58,7 +58,18 @@ index 3d9673db6bf535d3bc9518e7981ba8e84f4485bc..f737adbdc968e659cf5ba59e6cd5fd5f #include "chrome/browser/ui/color/chrome_color_id.h" #include "chrome/browser/ui/views/overlay/back_to_tab_button.h" #include "chrome/browser/ui/views/overlay/back_to_tab_label_button.h" -@@ -79,7 +83,7 @@ +@@ -32,8 +36,10 @@ + #include "chrome/browser/ui/views/overlay/hang_up_button.h" + #include "chrome/browser/ui/views/overlay/minimize_button.h" + #include "chrome/browser/ui/views/overlay/overlay_controls_fade_animation.h" ++#if 0 + #include "chrome/browser/ui/views/overlay/overlay_window_live_caption_button.h" + #include "chrome/browser/ui/views/overlay/overlay_window_live_caption_dialog.h" ++#endif + #include "chrome/browser/ui/views/overlay/playback_image_button.h" + #include "chrome/browser/ui/views/overlay/resize_handle_button.h" + #include "chrome/browser/ui/views/overlay/simple_overlay_window_image_button.h" +@@ -79,7 +85,7 @@ #include "ui/aura/window.h" #endif @@ -67,7 +78,7 @@ index 3d9673db6bf535d3bc9518e7981ba8e84f4485bc..f737adbdc968e659cf5ba59e6cd5fd5f #include "chrome/browser/shell_integration_win.h" #include "content/public/browser/render_widget_host_view.h" #include "ui/aura/window.h" -@@ -434,7 +438,7 @@ std::unique_ptr VideoOverlayWindowViews::Create( +@@ -434,7 +440,7 @@ std::unique_ptr VideoOverlayWindowViews::Create( overlay_window->Init(std::move(params)); overlay_window->OnRootViewReady(); @@ -76,13 +87,43 @@ index 3d9673db6bf535d3bc9518e7981ba8e84f4485bc..f737adbdc968e659cf5ba59e6cd5fd5f std::wstring app_user_model_id; Browser* browser = chrome::FindBrowserWithTab(controller->GetWebContents()); if (browser) { -@@ -1274,11 +1278,13 @@ void VideoOverlayWindowViews::SetUpViews() { - &VideoOverlayWindowViews::OnLiveCaptionButtonPressed, - base::Unretained(this))); - live_caption_button->SetSize(kActionButtonSize); +@@ -734,6 +740,7 @@ void VideoOverlayWindowViews::OnMouseEvent(ui::MouseEvent* event) { + } + + case ui::EventType::kMousePressed: +#if 0 - live_caption_button->SetIsLiveCaptionDialogOpen(false); - live_caption_dialog = std::make_unique( + // Hide the live caption dialog if it's visible and the user clicks + // outside of it. + if (live_caption_dialog_ && live_caption_dialog_->GetVisible() && +@@ -742,6 +749,7 @@ void VideoOverlayWindowViews::OnMouseEvent(ui::MouseEvent* event) { + SetLiveCaptionDialogVisibility(false); + return; + } ++#endif + break; + + default: +@@ -1136,9 +1144,11 @@ void VideoOverlayWindowViews::SetUpViews() { + std::unique_ptr hang_up_button; + std::unique_ptr progress_view; + std::unique_ptr timestamp; ++#if 0 + std::unique_ptr live_status; + std::unique_ptr live_caption_button; + std::unique_ptr live_caption_dialog; ++#endif + + if (Use2024UI()) { + play_pause_controls_view->SetSize({kCenterButtonSize, kCenterButtonSize}); +@@ -1261,6 +1271,7 @@ void VideoOverlayWindowViews::SetUpViews() { + timestamp->SetEnabledColor(ui::kColorSysOnSurfaceSubtle); + timestamp->SetBackgroundColor(SK_ColorTRANSPARENT); + timestamp->SetHorizontalAlignment(gfx::ALIGN_LEFT); ++#if 0 + live_status = std::make_unique( + l10n_util::GetStringUTF16(IDS_PICTURE_IN_PICTURE_LIVE_STATUS_TEXT), + views::style::CONTEXT_LABEL, views::style::STYLE_CAPTION_BOLD); +@@ -1279,6 +1290,7 @@ void VideoOverlayWindowViews::SetUpViews() { Profile::FromBrowserContext( controller_->GetWebContents()->GetBrowserContext())); live_caption_dialog->SetVisible(false); @@ -90,19 +131,97 @@ index 3d9673db6bf535d3bc9518e7981ba8e84f4485bc..f737adbdc968e659cf5ba59e6cd5fd5f toggle_microphone_button = std::make_unique(base::BindRepeating( [](VideoOverlayWindowViews* overlay) { -@@ -2415,9 +2421,10 @@ void VideoOverlayWindowViews::OnGestureEvent(ui::GestureEvent* event) { +@@ -1494,6 +1506,7 @@ void VideoOverlayWindowViews::SetUpViews() { + timestamp->layer()->SetFillsBoundsOpaquely(false); + timestamp->layer()->SetName("Timestamp"); + ++#if 0 + live_status->SetPaintToLayer(ui::LAYER_TEXTURED); + live_status->layer()->SetFillsBoundsOpaquely(false); + live_status->layer()->SetName("LiveStatus"); +@@ -1505,6 +1518,7 @@ void VideoOverlayWindowViews::SetUpViews() { + live_caption_dialog->SetPaintToLayer(ui::LAYER_TEXTURED); + live_caption_dialog->layer()->SetFillsBoundsOpaquely(false); + live_caption_dialog->layer()->SetName("LiveCaptionDialog"); ++#endif + } else { + // views::View that holds the skip-ad label button. + // ------------------------- +@@ -1596,13 +1610,14 @@ void VideoOverlayWindowViews::SetUpViews() { + + timestamp_ = + playback_controls_container_view_->AddChildView(std::move(timestamp)); ++#if 0 + live_status_ = + playback_controls_container_view_->AddChildView(std::move(live_status)); +- + live_caption_button_ = playback_controls_container_view_->AddChildView( + std::move(live_caption_button)); + live_caption_dialog_ = + controls_container_view->AddChildView(std::move(live_caption_dialog)); ++#endif + + toggle_camera_button_ = + vc_container->AddChildView(std::move(toggle_camera_button)); +@@ -1897,6 +1912,7 @@ void VideoOverlayWindowViews::OnUpdateControlsBounds() { + timestamp_->SetSize({max_timestamp_width, kTimestampHeight}); + timestamp_->SetVisible(!is_live_); + ++#if 0 + live_status_->SetPosition(timestamp_position); + live_status_->SetMaximumWidthSingleLine(max_timestamp_width); + live_status_->SetSize( +@@ -1917,6 +1933,7 @@ void VideoOverlayWindowViews::OnUpdateControlsBounds() { + live_caption_dialog_->SetPosition( + {live_caption_button_bounds.right() - live_caption_dialog_->width(), + live_caption_button_bounds.y() - live_caption_dialog_->height()}); ++#endif + + // The play/pause button and replay/forward 10 seconds buttons should not be + // visible while dragging the progress bar or for live media. +@@ -2407,6 +2424,7 @@ void VideoOverlayWindowViews::OnGestureEvent(ui::GestureEvent* event) { + return; + } + ++#if 0 + if (live_caption_dialog_ && live_caption_dialog_->GetVisible()) { + if (!GetLiveCaptionDialogBounds().Contains(event->location())) { + // Hide the live caption dialog if it's visible and the user taps outside +@@ -2415,11 +2433,11 @@ void VideoOverlayWindowViews::OnGestureEvent(ui::GestureEvent* event) { event->SetHandled(); return; } - -+#if 0 // Otherwise, let the live caption dialog handle the gesture. live_caption_dialog_->OnGestureTapEvent(event); -+#endif return; } ++#endif -@@ -2576,6 +2583,7 @@ gfx::Rect VideoOverlayWindowViews::GetLiveCaptionDialogBounds() { + if (GetBackToTabControlsBounds().Contains(event->location())) { + controller_->CloseAndFocusInitiator(); +@@ -2561,21 +2579,28 @@ gfx::Rect VideoOverlayWindowViews::GetProgressViewBounds() { + } + + gfx::Rect VideoOverlayWindowViews::GetLiveCaptionButtonBounds() { ++#if 0 + if (!Use2024UI()) { + return gfx::Rect(); + } + return live_caption_button_->GetMirroredBounds(); ++#endif ++ return gfx::Rect(); + } + + gfx::Rect VideoOverlayWindowViews::GetLiveCaptionDialogBounds() { ++#if 0 + if (!Use2024UI() || !live_caption_dialog_->GetVisible()) { + return gfx::Rect(); + } + return live_caption_dialog_->GetMirroredBounds(); ++#endif ++ return gfx::Rect(); + } bool VideoOverlayWindowViews::HasHighMediaEngagement( const url::Origin& origin) const { @@ -110,7 +229,7 @@ index 3d9673db6bf535d3bc9518e7981ba8e84f4485bc..f737adbdc968e659cf5ba59e6cd5fd5f MediaEngagementService* service = MediaEngagementService::Get(Profile::FromBrowserContext( GetController()->GetWebContents()->GetBrowserContext())); -@@ -2584,6 +2592,8 @@ bool VideoOverlayWindowViews::HasHighMediaEngagement( +@@ -2584,6 +2609,8 @@ bool VideoOverlayWindowViews::HasHighMediaEngagement( } return service->HasHighEngagement(origin); @@ -119,3 +238,24 @@ index 3d9673db6bf535d3bc9518e7981ba8e84f4485bc..f737adbdc968e659cf5ba59e6cd5fd5f } bool VideoOverlayWindowViews::IsTrustedForMediaPlayback() const { +@@ -2850,16 +2877,20 @@ void VideoOverlayWindowViews::UpdateTimestampLabel(base::TimeDelta current_time, + } + + void VideoOverlayWindowViews::OnLiveCaptionButtonPressed() { ++#if 0 + SetLiveCaptionDialogVisibility(!live_caption_dialog_->GetVisible()); ++#endif + } + + void VideoOverlayWindowViews::SetLiveCaptionDialogVisibility( + bool wanted_visibility) { ++#if 0 + if (wanted_visibility == live_caption_dialog_->GetVisible()) { + return; + } + live_caption_dialog_->SetVisible(wanted_visibility); + live_caption_button_->SetIsLiveCaptionDialogOpen(wanted_visibility); ++#endif + + views::View* controls_to_be_disabled_when_live_caption_is_open[] = { + minimize_button_.get(), diff --git a/patches/chromium/refactor_patch_electron_permissiontypes_into_blink.patch b/patches/chromium/refactor_patch_electron_permissiontypes_into_blink.patch index 1ea9d34d17..135c276983 100644 --- a/patches/chromium/refactor_patch_electron_permissiontypes_into_blink.patch +++ b/patches/chromium/refactor_patch_electron_permissiontypes_into_blink.patch @@ -6,7 +6,7 @@ Subject: refactor: patch electron PermissionTypes into blink 6387077: [PermissionOptions] Generalize PermissionRequestDescription | https://chromium-review.googlesource.com/c/chromium/src/+/6387077 diff --git a/components/permissions/permission_util.cc b/components/permissions/permission_util.cc -index 86b8df2b23dc975a6db87f04005cb105054305b0..770fd74ac5a21fe6daf68efe68efcf5a69483d84 100644 +index 18ad7ed73b0ed4de158519c01342f0bfd7cc3666..43f46dbbba4fb66b2a2c66580b85de0d7e16bf57 100644 --- a/components/permissions/permission_util.cc +++ b/components/permissions/permission_util.cc @@ -536,7 +536,17 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe( diff --git a/patches/chromium/revert_views_remove_desktopwindowtreehostwin_window_enlargement.patch b/patches/chromium/revert_views_remove_desktopwindowtreehostwin_window_enlargement.patch index 56b9a37d98..ca6603bc63 100644 --- a/patches/chromium/revert_views_remove_desktopwindowtreehostwin_window_enlargement.patch +++ b/patches/chromium/revert_views_remove_desktopwindowtreehostwin_window_enlargement.patch @@ -10,10 +10,10 @@ on Windows. We should refactor our code so that this patch isn't necessary. diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variations/fieldtrial_testing_config.json -index f8d61bc2e80c1f32aaae252d5897e6ac65935898..daf0bf82438ec022784ecbfa8e5e8869ec251359 100644 +index 5abbbb2684682532658b33c7f5fe2b91779a81a9..e6db0f72d82203a50728d42cdfcd482caa0126ef 100644 --- a/testing/variations/fieldtrial_testing_config.json +++ b/testing/variations/fieldtrial_testing_config.json -@@ -25517,6 +25517,21 @@ +@@ -25526,6 +25526,21 @@ ] } ], diff --git a/patches/nan/.patches b/patches/nan/.patches index cbc4d0d7f6..4b609c1fec 100644 --- a/patches/nan/.patches +++ b/patches/nan/.patches @@ -2,3 +2,4 @@ fix_correct_usages_of_v8_returnvalue_void_set_nonempty_for_new.patch fix_replace_deprecated_get_setprototype.patch fix_replace_usage_of_removed_writeutf8_with_writeutf8v2.patch test_use_v8_version_check_instead_of_node_version_check.patch +fix_remove_deprecated_propertycallbackinfo_holder.patch diff --git a/patches/nan/fix_remove_deprecated_propertycallbackinfo_holder.patch b/patches/nan/fix_remove_deprecated_propertycallbackinfo_holder.patch new file mode 100644 index 0000000000..eae76d8546 --- /dev/null +++ b/patches/nan/fix_remove_deprecated_propertycallbackinfo_holder.patch @@ -0,0 +1,199 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Shelley Vohr +Date: Thu, 30 Oct 2025 09:11:54 +0000 +Subject: fix: remove deprecated PropertyCallbackInfo::Holder() + +Removed upstream in https://chromium-review.googlesource.com/c/v8/v8/+/7013355. + +Property interceptors should be migrated to use info.This if they are installed +on the object instance otherwise info.HolderV2 if they are installed on the +prototype chain. + +diff --git a/nan_callbacks_12_inl.h b/nan_callbacks_12_inl.h +index ff3b654de5bcc7a187c4361b9eec26ea4b62a1eb..e40383c095ab329b2e20b7e68ade507788a79fb6 100644 +--- a/nan_callbacks_12_inl.h ++++ b/nan_callbacks_12_inl.h +@@ -160,7 +160,7 @@ class PropertyCallbackInfo { + inline v8::Isolate* GetIsolate() const { return info_.GetIsolate(); } + inline v8::Local Data() const { return data_; } + inline v8::Local This() const { return info_.This(); } +- inline v8::Local Holder() const { return info_.Holder(); } ++ inline v8::Local Holder() const { return info_.HolderV2(); } + inline ReturnValue GetReturnValue() const { + return ReturnValue(info_.GetReturnValue()); + } +diff --git a/test/cpp/accessors.cpp b/test/cpp/accessors.cpp +index 5848a40920c35680360a9d8b1390e983c6896996..e8506e4727e707ca766fe1b4229272ba18864ae0 100644 +--- a/test/cpp/accessors.cpp ++++ b/test/cpp/accessors.cpp +@@ -159,7 +159,7 @@ NAN_SETTER(SetterGetter::SetProp2) { + + NAN_METHOD(SetterGetter::Log) { + SetterGetter* settergetter = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + + info.GetReturnValue().Set(Nan::New(settergetter->log).ToLocalChecked()); + } +diff --git a/test/cpp/accessors2.cpp b/test/cpp/accessors2.cpp +index f5a2b312ca62256bc43141fad145cd68fc300446..59125d33c19856938907ab4dd28dc60037065a16 100644 +--- a/test/cpp/accessors2.cpp ++++ b/test/cpp/accessors2.cpp +@@ -88,7 +88,7 @@ NAN_METHOD(SetterGetter::New) { + + NAN_GETTER(SetterGetter::GetProp1) { + SetterGetter* settergetter = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + assert(strlen(settergetter->log) < sizeof (settergetter->log)); + strncat( + settergetter->log +@@ -110,7 +110,7 @@ NAN_GETTER(SetterGetter::GetProp1) { + + NAN_GETTER(SetterGetter::GetProp2) { + SetterGetter* settergetter = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + assert(strlen(settergetter->log) < sizeof (settergetter->log)); + strncat( + settergetter->log +@@ -132,7 +132,7 @@ NAN_GETTER(SetterGetter::GetProp2) { + + NAN_SETTER(SetterGetter::SetProp2) { + SetterGetter* settergetter = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + strncpy( + settergetter->prop2 + , *Nan::Utf8String(value) +@@ -157,7 +157,7 @@ NAN_SETTER(SetterGetter::SetProp2) { + + NAN_METHOD(SetterGetter::Log) { + SetterGetter* settergetter = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + + info.GetReturnValue().Set(Nan::New(settergetter->log).ToLocalChecked()); + } +diff --git a/test/cpp/indexedinterceptors.cpp b/test/cpp/indexedinterceptors.cpp +index 19b7673ff4c07236b11e1947d805979c21a0876e..668aa22f00ecc624ea4a66de93d289cdc7aad722 100644 +--- a/test/cpp/indexedinterceptors.cpp ++++ b/test/cpp/indexedinterceptors.cpp +@@ -74,7 +74,7 @@ NAN_METHOD(IndexedInterceptor::New) { + + NAN_INDEX_GETTER(IndexedInterceptor::PropertyGetter) { + IndexedInterceptor* interceptor = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + if (index == 0) { + info.GetReturnValue().Set(Nan::New(interceptor->buf).ToLocalChecked()); + } else { +@@ -85,7 +85,7 @@ NAN_INDEX_GETTER(IndexedInterceptor::PropertyGetter) { + + NAN_INDEX_SETTER(IndexedInterceptor::PropertySetter) { + IndexedInterceptor* interceptor = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + if (index == 0) { + std::strncpy( + interceptor->buf +@@ -107,7 +107,7 @@ NAN_INDEX_ENUMERATOR(IndexedInterceptor::PropertyEnumerator) { + + NAN_INDEX_DELETER(IndexedInterceptor::PropertyDeleter) { + IndexedInterceptor* interceptor = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + std::strncpy(interceptor->buf, "goober", sizeof (interceptor->buf)); + info.GetReturnValue().Set(True()); + return Intercepted::Yes(); +diff --git a/test/cpp/methodswithdata.cpp b/test/cpp/methodswithdata.cpp +index 8a908e3246f1efd77290597e500185010293c473..a1ac03c891c14bcd96c139514866acc4c2bd393c 100644 +--- a/test/cpp/methodswithdata.cpp ++++ b/test/cpp/methodswithdata.cpp +@@ -150,7 +150,7 @@ NAN_SETTER(SetterGetter::SetProp2) { + + NAN_METHOD(SetterGetter::Log) { + SetterGetter* settergetter = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + + info.GetReturnValue().Set(Nan::New(settergetter->log).ToLocalChecked()); + } +diff --git a/test/cpp/namedinterceptors.cpp b/test/cpp/namedinterceptors.cpp +index 9f4b3b2000188fbeb53a5ec53969226916bac9da..d0761e5880d91792470ae4fecd0b5dfd3770bfef 100644 +--- a/test/cpp/namedinterceptors.cpp ++++ b/test/cpp/namedinterceptors.cpp +@@ -74,7 +74,7 @@ NAN_METHOD(NamedInterceptor::New) { + + NAN_PROPERTY_GETTER(NamedInterceptor::PropertyGetter) { + NamedInterceptor* interceptor = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + if (!std::strcmp(*Nan::Utf8String(property), "prop")) { + info.GetReturnValue().Set(Nan::New(interceptor->buf).ToLocalChecked()); + } else { +@@ -85,7 +85,7 @@ NAN_PROPERTY_GETTER(NamedInterceptor::PropertyGetter) { + + NAN_PROPERTY_SETTER(NamedInterceptor::PropertySetter) { + NamedInterceptor* interceptor = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + if (!std::strcmp(*Nan::Utf8String(property), "prop")) { + std::strncpy( + interceptor->buf +@@ -106,7 +106,7 @@ NAN_PROPERTY_ENUMERATOR(NamedInterceptor::PropertyEnumerator) { + + NAN_PROPERTY_DELETER(NamedInterceptor::PropertyDeleter) { + NamedInterceptor* interceptor = +- ObjectWrap::Unwrap(info.Holder()); ++ ObjectWrap::Unwrap(info.This()); + std::strncpy(interceptor->buf, "goober", sizeof (interceptor->buf)); + info.GetReturnValue().Set(True()); + return Intercepted::Yes(); +diff --git a/test/cpp/objectwraphandle.cpp b/test/cpp/objectwraphandle.cpp +index ac4f79aa256c82d2a8b64fa5a0d44d5c2ebbd9c7..64dd9e7ad95d1f37a6223dfd8e385b9d122ba3bc 100644 +--- a/test/cpp/objectwraphandle.cpp ++++ b/test/cpp/objectwraphandle.cpp +@@ -47,17 +47,17 @@ class MyObject : public ObjectWrap { + } + + static NAN_METHOD(GetHandle) { +- MyObject* obj = ObjectWrap::Unwrap(info.Holder()); ++ MyObject* obj = ObjectWrap::Unwrap(info.This()); + info.GetReturnValue().Set(obj->handle()); + } + + static NAN_METHOD(GetHandleConst) { +- MyObject const *obj = ObjectWrap::Unwrap(info.Holder()); ++ MyObject const *obj = ObjectWrap::Unwrap(info.This()); + info.GetReturnValue().Set(obj->handle()); + } + + static NAN_METHOD(GetValue) { +- MyObject* obj = ObjectWrap::Unwrap(info.Holder()); ++ MyObject* obj = ObjectWrap::Unwrap(info.This()); + info.GetReturnValue().Set(obj->value_); + } + +diff --git a/test/cpp/wrappedobjectfactory.cpp b/test/cpp/wrappedobjectfactory.cpp +index 9930a5f12913f703391e3d183b56a37569c60887..ec3955e496ed623966c83b5a5b661103892622fd 100644 +--- a/test/cpp/wrappedobjectfactory.cpp ++++ b/test/cpp/wrappedobjectfactory.cpp +@@ -49,7 +49,7 @@ class InnerObject : public ObjectWrap { + } + + static NAN_METHOD(GetValue) { +- InnerObject* obj = ObjectWrap::Unwrap(info.Holder()); ++ InnerObject* obj = ObjectWrap::Unwrap(info.This()); + info.GetReturnValue().Set(obj->value_); + } + +@@ -102,7 +102,7 @@ class MyObject : public ObjectWrap { + } + + static NAN_METHOD(GetValue) { +- MyObject* obj = ObjectWrap::Unwrap(info.Holder()); ++ MyObject* obj = ObjectWrap::Unwrap(info.This()); + info.GetReturnValue().Set(obj->value_); + } +