* chore: bump chromium in DEPS to 129.0.6623.0
* chore: update mas_avoid_private_macos_api_usage.patch.patch
remove the changes to media/audio/mac/audio_manager_mac.cc,
since upstream has also made this change now.
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5738654
* chore: update fix_disable_scope_reuse_associated_dchecks.patch
We had been removing a couple of `DCHECK`. Upstream changed their
code to limit when these `DCHECK`s get called, so let's see if our
change is still needed.
Xref: https://chromium-review.googlesource.com/c/v8/v8/+/5739076
* chore: e patches all
* Bump the Chrome macOS deployment target to 11.0
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5734361
BREAKING CHANGE: Bump the Chrome macOS deployment target to 11.0
* src: stop using deprecated fields of `v8::FastApiCallbackOptions`
Xref: d0000b118d
Xref: https://chromium-review.googlesource.com/c/v8/v8/+/5741336
Xref: https://chromium-review.googlesource.com/c/v8/v8/+/5741199
* fixup! chore: update fix_disable_scope_reuse_associated_dchecks.patch
chore: re-disable DCHECKs
yep, it is still needed
* refactor use non-deprecated variant of openApplicationAtURL
old version is deprecated now in macOS 11
Xref: https://developer.apple.com/documentation/appkit/nsworkspace/1534810-launchapplicationaturl
Xref: https://developer.apple.com/documentation/appkit/nsworkspace/3172700-openapplicationaturl
* chore: bump chromium in DEPS to 129.0.6626.0
* chore: e patches all
* chore: disable NSUserNotification deprecation errors
* chore: disable NSWindowStyleMaskTexturedBackground deprecation errors
Xref: https://github.com/electron/electron/issues/43125
* chore: disable deprecation errors in platform_util_mac.mm
* chore: disable launchApplication deprecation errors
* chore: bump chromium in DEPS to 129.0.6630.0
* chore: update refactor_expose_file_system_access_blocklist.patch
apply patch manually due to context shear
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5745444
* chore: update deps_add_v8_object_setinternalfieldfornodecore.patch
no manual changes. patch applied with fuzz 1 (offset -5 lines)
* chore: e patches all
* fix: add clang_x64_v8_arm64/snapshot_blob.bin to the zip manifest
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5746173
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
		
	
			
		
			
				
	
	
		
			95 lines
		
	
	
	
		
			4.4 KiB
			
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			95 lines
		
	
	
	
		
			4.4 KiB
			
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 | 
						|
From: Jeremy Apthorp <nornagon@nornagon.net>
 | 
						|
Date: Wed, 28 Nov 2018 13:20:27 -0800
 | 
						|
Subject: support_mixed_sandbox_with_zygote.patch
 | 
						|
 | 
						|
On Linux, Chromium launches all new renderer processes via a "zygote"
 | 
						|
process which has the sandbox pre-initialized (see
 | 
						|
//docs/linux_zygote.md). In order to support mixed-sandbox mode, in
 | 
						|
which some renderers are launched with the sandbox engaged and others
 | 
						|
without it, we need the option to launch non-sandboxed renderers without
 | 
						|
going through the zygote.
 | 
						|
 | 
						|
Chromium already supports a `--no-zygote` flag, but it turns off the
 | 
						|
zygote completely, and thus also disables sandboxing. This patch allows
 | 
						|
the `--no-zygote` flag to affect renderer processes on a case-by-case
 | 
						|
basis, checking immediately prior to launch whether to go through the
 | 
						|
zygote or not based on the command-line of the to-be-launched renderer.
 | 
						|
 | 
						|
This patch could conceivably be upstreamed, as it does not affect
 | 
						|
production Chromium (which does not use the `--no-zygote` flag).
 | 
						|
However, the patch would need to be reviewed by the security team, as it
 | 
						|
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
 | 
						|
index bd77d2cf5018c453a753b2f160a382821c84ab78..c916c631535cb428c31436bc54bfa2dff7cd8c71 100644
 | 
						|
--- a/content/browser/renderer_host/render_process_host_impl.cc
 | 
						|
+++ b/content/browser/renderer_host/render_process_host_impl.cc
 | 
						|
@@ -1612,9 +1612,15 @@ bool RenderProcessHostImpl::Init() {
 | 
						|
     std::unique_ptr<SandboxedProcessLauncherDelegate> sandbox_delegate =
 | 
						|
         std::make_unique<RendererSandboxedProcessLauncherDelegateWin>(
 | 
						|
             *cmd_line, IsPdf(), /*is_jit_disabled=*/IsPdf());
 | 
						|
+#else
 | 
						|
+#if BUILDFLAG(USE_ZYGOTE)
 | 
						|
+    bool use_zygote = !cmd_line->HasSwitch(switches::kNoZygote);
 | 
						|
+    std::unique_ptr<SandboxedProcessLauncherDelegate> sandbox_delegate =
 | 
						|
+        std::make_unique<RendererSandboxedProcessLauncherDelegate>(use_zygote);
 | 
						|
 #else
 | 
						|
     std::unique_ptr<SandboxedProcessLauncherDelegate> sandbox_delegate =
 | 
						|
         std::make_unique<RendererSandboxedProcessLauncherDelegate>();
 | 
						|
+#endif
 | 
						|
 #endif
 | 
						|
 
 | 
						|
     auto tracing_config_memory_region =
 | 
						|
diff --git a/content/browser/renderer_host/renderer_sandboxed_process_launcher_delegate.cc b/content/browser/renderer_host/renderer_sandboxed_process_launcher_delegate.cc
 | 
						|
index 2c724b73a55fa21154ff8cedd41d3ca5738dfa76..b3f5973a4b686542d46d8338722f5fe42c86c529 100644
 | 
						|
--- a/content/browser/renderer_host/renderer_sandboxed_process_launcher_delegate.cc
 | 
						|
+++ b/content/browser/renderer_host/renderer_sandboxed_process_launcher_delegate.cc
 | 
						|
@@ -35,6 +35,9 @@ namespace content {
 | 
						|
 
 | 
						|
 #if BUILDFLAG(USE_ZYGOTE)
 | 
						|
 ZygoteCommunication* RendererSandboxedProcessLauncherDelegate::GetZygote() {
 | 
						|
+  if (!use_zygote_) {
 | 
						|
+    return nullptr;
 | 
						|
+  }
 | 
						|
   const base::CommandLine& browser_command_line =
 | 
						|
       *base::CommandLine::ForCurrentProcess();
 | 
						|
   base::CommandLine::StringType renderer_prefix =
 | 
						|
@@ -70,6 +73,9 @@ RendererSandboxedProcessLauncherDelegateWin::
 | 
						|
       is_pdf_renderer_(is_pdf_renderer) {
 | 
						|
   // PDF renderers must be jitless.
 | 
						|
   CHECK(!is_pdf_renderer || is_jit_disabled);
 | 
						|
+#if BUILDFLAG(USE_ZYGOTE)
 | 
						|
+  use_zygote_ = !cmd_line->HasSwitch(switches::kNoZygote);
 | 
						|
+#endif
 | 
						|
   if (is_jit_disabled) {
 | 
						|
     dynamic_code_can_be_disabled_ = true;
 | 
						|
     return;
 | 
						|
diff --git a/content/browser/renderer_host/renderer_sandboxed_process_launcher_delegate.h b/content/browser/renderer_host/renderer_sandboxed_process_launcher_delegate.h
 | 
						|
index 00038da2c15696b361aea1469ccf73307e44963e..7ccfbf11ecfd56fd165915baa85919eaf2e923b9 100644
 | 
						|
--- a/content/browser/renderer_host/renderer_sandboxed_process_launcher_delegate.h
 | 
						|
+++ b/content/browser/renderer_host/renderer_sandboxed_process_launcher_delegate.h
 | 
						|
@@ -18,6 +18,11 @@ class CONTENT_EXPORT RendererSandboxedProcessLauncherDelegate
 | 
						|
  public:
 | 
						|
   RendererSandboxedProcessLauncherDelegate() = default;
 | 
						|
 
 | 
						|
+#if BUILDFLAG(USE_ZYGOTE)
 | 
						|
+  RendererSandboxedProcessLauncherDelegate(bool use_zygote):
 | 
						|
+    use_zygote_(use_zygote) {}
 | 
						|
+#endif
 | 
						|
+
 | 
						|
   ~RendererSandboxedProcessLauncherDelegate() override = default;
 | 
						|
 
 | 
						|
 #if BUILDFLAG(USE_ZYGOTE)
 | 
						|
@@ -30,6 +35,11 @@ class CONTENT_EXPORT RendererSandboxedProcessLauncherDelegate
 | 
						|
 
 | 
						|
   // sandbox::policy::SandboxDelegate:
 | 
						|
   sandbox::mojom::Sandbox GetSandboxType() override;
 | 
						|
+
 | 
						|
+ private:
 | 
						|
+#if BUILDFLAG(USE_ZYGOTE)
 | 
						|
+  bool use_zygote_ = true;
 | 
						|
+#endif
 | 
						|
 };
 | 
						|
 
 | 
						|
 #if BUILDFLAG(IS_WIN)
 |