aboutsummaryrefslogtreecommitdiff
path: root/www/chromium/files/patch-content_gpu_gpu__main.cc
diff options
context:
space:
mode:
Diffstat (limited to 'www/chromium/files/patch-content_gpu_gpu__main.cc')
-rw-r--r--www/chromium/files/patch-content_gpu_gpu__main.cc56
1 files changed, 46 insertions, 10 deletions
diff --git a/www/chromium/files/patch-content_gpu_gpu__main.cc b/www/chromium/files/patch-content_gpu_gpu__main.cc
index 56356738d1ee..26a2ecf40168 100644
--- a/www/chromium/files/patch-content_gpu_gpu__main.cc
+++ b/www/chromium/files/patch-content_gpu_gpu__main.cc
@@ -1,20 +1,56 @@
---- content/gpu/gpu_main.cc.orig 2021-07-19 18:45:15 UTC
+--- content/gpu/gpu_main.cc.orig 2021-12-31 00:57:32 UTC
+++ content/gpu/gpu_main.cc
-@@ -86,7 +86,7 @@
- #include "ui/gfx/x/x11_switches.h" // nogncheck
+@@ -89,6 +89,11 @@
+ #include "sandbox/policy/sandbox_type.h"
#endif
--#if defined(OS_LINUX) || defined(OS_CHROMEOS)
-+#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD)
- #include "content/gpu/gpu_sandbox_hook_linux.h"
- #include "content/public/common/sandbox_init.h"
- #include "sandbox/policy/linux/sandbox_linux.h"
-@@ -282,7 +282,7 @@ int GpuMain(const MainFunctionParams& parameters) {
++#if defined(OS_FREEBSD)
++#include "content/public/common/sandbox_init.h"
++#include "sandbox/policy/freebsd/sandbox_freebsd.h"
++#endif
++
+ #if defined(OS_MAC)
+ #include "base/message_loop/message_pump_mac.h"
+ #include "components/metal_util/device_removal.h"
+@@ -109,6 +114,8 @@ namespace {
+ bool StartSandboxLinux(gpu::GpuWatchdogThread*,
+ const gpu::GPUInfo*,
+ const gpu::GpuPreferences&);
++#elif defined(OS_FREEBSD)
++bool StartSandboxFreeBSD();
+ #elif defined(OS_WIN)
+ bool StartSandboxWindows(const sandbox::SandboxInterfaceInfo*);
+ #endif
+@@ -169,6 +176,8 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel
+ const gpu::GpuPreferences& gpu_prefs) override {
+ #if defined(OS_LINUX) || defined(OS_CHROMEOS)
+ return StartSandboxLinux(watchdog_thread, gpu_info, gpu_prefs);
++#elif defined(OS_BSD)
++ return StartSandboxFreeBSD();
+ #elif defined(OS_WIN)
+ return StartSandboxWindows(sandbox_info_);
+ #elif defined(OS_MAC)
+@@ -263,7 +272,7 @@ int GpuMain(const MainFunctionParams& parameters) {
+ std::make_unique<base::SingleThreadTaskExecutor>(
gpu_preferences.message_pump_type);
}
- #endif
-#elif defined(OS_LINUX) || defined(OS_CHROMEOS)
+#elif defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD)
#error "Unsupported Linux platform."
#elif defined(OS_MAC)
// Cross-process CoreAnimation requires a CFRunLoop to function at all, and
+@@ -446,6 +455,14 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdo
+ return res;
+ }
+ #endif // defined(OS_LINUX) || defined(OS_CHROMEOS)
++
++#if defined(OS_FREEBSD)
++bool StartSandboxFreeBSD() {
++ return sandbox::policy::SandboxFreeBSD::GetInstance()->InitializeSandbox(
++ sandbox::policy::SandboxTypeFromCommandLine(
++ *base::CommandLine::ForCurrentProcess()));
++}
++#endif // defined(OS_FREEBSD)
+
+ #if defined(OS_WIN)
+ bool StartSandboxWindows(const sandbox::SandboxInterfaceInfo* sandbox_info) {