diff options
Diffstat (limited to 'devel/electron37/files/patch-third__party_perfetto_src_base_utils.cc')
-rw-r--r-- | devel/electron37/files/patch-third__party_perfetto_src_base_utils.cc | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/devel/electron37/files/patch-third__party_perfetto_src_base_utils.cc b/devel/electron37/files/patch-third__party_perfetto_src_base_utils.cc new file mode 100644 index 000000000000..c0aa10bdb0ee --- /dev/null +++ b/devel/electron37/files/patch-third__party_perfetto_src_base_utils.cc @@ -0,0 +1,47 @@ +--- third_party/perfetto/src/base/utils.cc.orig 2025-04-22 20:15:27 UTC ++++ third_party/perfetto/src/base/utils.cc +@@ -38,7 +38,8 @@ + #include <mach/vm_page_size.h> + #endif + +-#if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) || \ ++#if (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) && \ ++ !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD)) || \ + PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) + #include <sys/prctl.h> + +@@ -279,14 +280,22 @@ std::string GetCurExecutablePath() { + + std::string GetCurExecutablePath() { + std::string self_path; +-#if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) || \ ++#if (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) || \ + PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) || \ +- PERFETTO_BUILDFLAG(PERFETTO_OS_FUCHSIA) ++ PERFETTO_BUILDFLAG(PERFETTO_OS_FUCHSIA)) && \ ++ !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD) + char buf[PATH_MAX]; + ssize_t size = readlink("/proc/self/exe", buf, sizeof(buf)); + PERFETTO_CHECK(size != -1); + // readlink does not null terminate. + self_path = std::string(buf, static_cast<size_t>(size)); ++#elif PERFETTO_BUILDFLAG(PERFETTO_OS_BSD) ++ char *buf; ++ const char *cpath = "/usr/local/chrome/chrome"; ++ if ((buf = getenv("CHROME_EXE_PATH")) != NULL) ++ self_path = std::string(buf); ++ else ++ self_path = std::string(cpath); + #elif PERFETTO_BUILDFLAG(PERFETTO_OS_APPLE) + uint32_t size = 0; + PERFETTO_CHECK(_NSGetExecutablePath(nullptr, &size)); +@@ -338,7 +347,8 @@ bool IsSyncMemoryTaggingEnabled() { + } + + bool IsSyncMemoryTaggingEnabled() { +-#if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) || \ ++#if (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) && \ ++ !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD)) || \ + PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) + // Compute only once per lifetime of the process. + static bool cached_value = [] { |