From: Michael Froman <mfroman@mozilla.com>
Date: Wed,
8 Apr
2026 10:
58:
00 -
0500
Subject: Bug
2030139 - (fix-bb3693c382) fix linux builds for constexpr
containing std::string
Mercurial Revision:
https://hg.mozilla.org/mozilla-central/rev/cab51cf0d4e9e67e9f5b053128d05e859d47b7c2
---
modules/portal/pipewire_utils.cc |
9 +++++++++
1 file changed,
9 insertions(+)
diff --git a/modules/portal/pipewire_utils.cc b/modules/portal/pipewire_utils.cc
index
850726cc58..
7008696b7d
100644
--- a/modules/portal/pipewire_utils.cc
+++ b/modules/portal/pipewire_utils.cc
@@ -
28,
9 +
28,
18 @@
namespace webrtc {
+#if defined(__GNUC__) && defined(WEBRTC_MOZILLA_BUILD)
+// Mozilla linux builds are using -std=gnu++
20, which doesn't approve
+// of using std::string in a constexpr. PipewireVersion now contains
+// std::string as of libwebrtc commit d167fe9296.
+static const PipeWireVersion kReentrantDeinitMinVersion = {.major =
0,
+ .minor =
3,
+ .micro =
49};
+#else
constexpr PipeWireVersion kReentrantDeinitMinVersion = {.major =
0,
.minor =
3,
.micro =
49};
+#endif
PipeWireVersion PipeWireVersion::Parse(const std::string_view& version) {
std::vector<std::string_view> parsed_version = split(version, '.');