1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
--- electron/shell/app/electron_main_delegate.cc.orig 2025-08-18 21:37:38 UTC
+++ electron/shell/app/electron_main_delegate.cc
@@ -66,13 +66,13 @@
#include "chrome/child/v8_crashpad_support_win.h"
#endif
-#if BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
#include "base/nix/xdg_util.h"
#include "v8/include/v8-wasm-trap-handler-posix.h"
#include "v8/include/v8.h"
#endif
-#if !IS_MAS_BUILD()
+#if !IS_MAS_BUILD() && !BUILDFLAG(IS_BSD)
#include "components/crash/core/app/crash_switches.h" // nogncheck
#include "components/crash/core/app/crashpad.h" // nogncheck
#include "components/crash/core/common/crash_key.h"
@@ -164,7 +164,7 @@ bool ElectronPathProvider(int key, base::FilePath* res
create_dir = true;
break;
}
-#if BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
case DIR_APP_DATA: {
auto env = base::Environment::Create();
cur = base::nix::GetXDGDirectory(
@@ -306,7 +306,7 @@ std::optional<int> ElectronMainDelegate::BasicStartupC
base::win::PinUser32();
#endif
-#if BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
// Check for --no-sandbox parameter when running as root.
if (getuid() == 0 && IsSandboxEnabled(command_line))
LOG(FATAL) << "Running as root without --"
@@ -356,7 +356,7 @@ void ElectronMainDelegate::PreSandboxStartup() {
/* is_preinit = */ IsBrowserProcess() || IsZygoteProcess());
#endif
-#if !IS_MAS_BUILD()
+#if !IS_MAS_BUILD() && !BUILDFLAG(IS_BSD)
crash_reporter::InitializeCrashKeys();
#endif
@@ -391,7 +391,7 @@ void ElectronMainDelegate::PreSandboxStartup() {
}
#endif
-#if !IS_MAS_BUILD()
+#if !IS_MAS_BUILD() && !BUILDFLAG(IS_BSD)
crash_keys::SetCrashKeysFromCommandLine(*command_line);
crash_keys::SetPlatformCrashKey();
#endif
@@ -426,7 +426,7 @@ std::optional<int> ElectronMainDelegate::PreBrowserMai
#if BUILDFLAG(IS_MAC)
RegisterAtomCrApp();
#endif
-#if BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
// Set the global activation token sent as an environment variable.
auto env = base::Environment::Create();
base::nix::ExtractXdgActivationTokenFromEnv(*env);
|