From ac219c56502c7628feab57a69628ae73bf96a386 Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Fri, 19 Sep 2025 18:41:09 +1000 Subject: [PATCH] iceweasel: bump version --- ...el-141.0.recipe => iceweasel-143.0.recipe} | 2 +- ...41.0.patchset => iceweasel-143.0.patchset} | 363 ++++++++++-------- ...hset => iceweasel_launcher-143.0.patchset} | 0 3 files changed, 206 insertions(+), 159 deletions(-) rename www-client/iceweasel/{iceweasel-141.0.recipe => iceweasel-143.0.recipe} (97%) rename www-client/iceweasel/patches/{iceweasel-141.0.patchset => iceweasel-143.0.patchset} (96%) rename www-client/iceweasel/patches/{iceweasel_launcher-141.0.patchset => iceweasel_launcher-143.0.patchset} (100%) diff --git a/www-client/iceweasel/iceweasel-141.0.recipe b/www-client/iceweasel/iceweasel-143.0.recipe similarity index 97% rename from www-client/iceweasel/iceweasel-141.0.recipe rename to www-client/iceweasel/iceweasel-143.0.recipe index 223908431..535d010d1 100644 --- a/www-client/iceweasel/iceweasel-141.0.recipe +++ b/www-client/iceweasel/iceweasel-143.0.recipe @@ -7,7 +7,7 @@ COPYRIGHT="1995-2025 Mozilla Developers and Contributors" LICENSE="MPL v2.0" REVISION="1" SOURCE_URI="https://ftp.mozilla.org/pub/firefox/releases/${portVersion}/source/firefox-${portVersion}.source.tar.xz" -CHECKSUM_SHA256="80982a84bb7ca41a67ac073321de96f74e0c25f296d19ca432b11fc2a33535c8" +CHECKSUM_SHA256="6c45ca38091820c2c9925a85c80c04120de0ced98589065358c34d257e1edf83" SOURCE_DIR="firefox-$portVersion" PATCHES=" iceweasel-$portVersion.patchset diff --git a/www-client/iceweasel/patches/iceweasel-141.0.patchset b/www-client/iceweasel/patches/iceweasel-143.0.patchset similarity index 96% rename from www-client/iceweasel/patches/iceweasel-141.0.patchset rename to www-client/iceweasel/patches/iceweasel-143.0.patchset index 03fd83d96..0b2408ce8 100644 --- a/www-client/iceweasel/patches/iceweasel-141.0.patchset +++ b/www-client/iceweasel/patches/iceweasel-143.0.patchset @@ -1,11 +1,20 @@ -From 95ed62fc8aa1fc1f9cc19baa5d3de07ed4f8f5cc Mon Sep 17 00:00:00 2001 +From 1a26d6092016b5173b3834be67aa71dfb68c15cd Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> -Date: Thu, 31 Jul 2025 19:09:03 +1000 -Subject: Fix +Date: Fri, 19 Sep 2025 16:35:07 +1000 +Subject: Add Haiku build support +Based on patches sourced from https://github.com/kenz-gelsoft/gecko-dev/ + +- Enabled building for Haiku. +- Implemented the cubeb audio backend for MediaKit (input and output). +- Implemented native notifications. +- Fixed build with WebRTC enabled. +- Implemented WebRTC modules for desktop capture and video capture. +- Made additional modifications for Haiku compatibility. +- Implement remote server diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js -index 4050c00..817df25 100644 +index d4f0e75..8297455 100644 --- a/browser/app/profile/firefox.js +++ b/browser/app/profile/firefox.js @@ -15,7 +15,9 @@ @@ -28,7 +37,7 @@ index 4050c00..817df25 100644 pref("general.autoScroll", false); #else pref("general.autoScroll", true); -@@ -1034,7 +1036,7 @@ pref("security.allow_parent_unrestricted_js_loads", false); +@@ -1060,7 +1062,7 @@ pref("browser.unexpectedScriptLoad.logLevel", "Warn"); pref("browser.tabs.min_inactive_duration_before_unload", 600000); // Does middleclick paste of clipboard to new tab button @@ -106,10 +115,10 @@ index af2fc4f..e61403a 100644 LIBRARY_DEFINES["MOZ_HAS_MOZGLUE"] = True if not CONFIG["MOZ_GLUE_IN_PROGRAM"]: diff --git a/build/gn_processor.py b/build/gn_processor.py -index 7da0a7b..684f454 100644 +index 20f2e0d..ad9cf26 100644 --- a/build/gn_processor.py +++ b/build/gn_processor.py -@@ -184,6 +184,7 @@ def filter_gn_config(path, gn_result, sandbox_vars, input_vars, gn_target): +@@ -185,6 +185,7 @@ def filter_gn_config(path, gn_result, sandbox_vars, input_vars, gn_target): "loong64": "loongarch64", } oses = { @@ -117,7 +126,7 @@ index 7da0a7b..684f454 100644 "android": "Android", "linux": "Linux", "mac": "Darwin", -@@ -800,7 +801,7 @@ def main(): +@@ -810,7 +811,7 @@ def main(): vars_set = [] for is_debug in (True, False): @@ -126,7 +135,7 @@ index 7da0a7b..684f454 100644 target_cpus = ["x64"] if target_os in ("android", "linux", "mac", "win", "openbsd"): target_cpus.append("arm64") -@@ -817,7 +818,7 @@ def main(): +@@ -827,7 +828,7 @@ def main(): "host_cpu": "x64", "is_debug": is_debug, "target_cpu": target_cpu, @@ -134,18 +143,7 @@ index 7da0a7b..684f454 100644 + "target_os": "haiku", } if target_os == "linux": - for use_x11 in (True, False): -@@ -826,6 +827,10 @@ def main(): - else: - if target_os == "openbsd": - vars["use_x11"] = True -+ else: -+ if target_os == "haiku": -+ vars["use_x11"] = False -+ - vars_set.append(vars) - - gn_configs = [] + for enable_x11 in (True, False): diff --git a/build/gyp_includes/common.gypi b/build/gyp_includes/common.gypi index 8acb326..a50a782 100644 --- a/build/gyp_includes/common.gypi @@ -204,10 +202,10 @@ index f0f4d7a..297718d 100644 diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure -index 6162d68..3b8adad 100644 +index 6baa691..d583a4f 100644 --- a/build/moz.configure/init.configure +++ b/build/moz.configure/init.configure -@@ -507,6 +507,8 @@ def split_triplet(triplet, allow_wasi=False): +@@ -519,6 +519,8 @@ def split_triplet(triplet, allow_wasi=False): canonical_os = canonical_kernel = "DragonFly" elif os.startswith("freebsd"): canonical_os = canonical_kernel = "FreeBSD" @@ -216,7 +214,7 @@ index 6162d68..3b8adad 100644 elif os.startswith("netbsd"): canonical_os = canonical_kernel = "NetBSD" elif os.startswith("openbsd"): -@@ -935,6 +937,15 @@ def target_is_freebsd(target): +@@ -947,6 +949,15 @@ def target_is_freebsd(target): set_define("XP_FREEBSD", target_is_freebsd) @@ -233,10 +231,10 @@ index 6162d68..3b8adad 100644 def target_is_solaris(target): if target.kernel == "SunOS": diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure -index cc42c12..c3fda1b 100644 +index f79ee7b..9090574 100644 --- a/build/moz.configure/toolchain.configure +++ b/build/moz.configure/toolchain.configure -@@ -2961,7 +2961,7 @@ def security_hardening_cflags( +@@ -2965,7 +2965,7 @@ def security_hardening_cflags( if ( c_compiler.type == "clang" and c_compiler.version >= "11.0.1" @@ -281,10 +279,10 @@ index 3f34f45..97b7c98 100644 {u"keypress", u"VK_RIGHT", nullptr, u"alt", u"cmd_moveRight2"}, // macOS {u"keypress", u"VK_LEFT", nullptr, u"alt,shift", u"cmd_selectLeft2"}, // macOS diff --git a/dom/media/CallbackThreadRegistry.cpp b/dom/media/CallbackThreadRegistry.cpp -index 84ef7b7..e041636 100644 +index 4a1ec72..fc70f51 100644 --- a/dom/media/CallbackThreadRegistry.cpp +++ b/dom/media/CallbackThreadRegistry.cpp -@@ -96,7 +96,9 @@ void CallbackThreadRegistry::Unregister(ProfilerThreadId aThreadId) { +@@ -97,7 +97,9 @@ void CallbackThreadRegistry::Unregister(ProfilerThreadId aThreadId) { return; } } @@ -364,10 +362,10 @@ index 488b9b2..2d8e672 100644 [ 'OS == "win"', { 'defines' : [ diff --git a/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs.c b/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs.c -index 51f72f4..18ad233 100644 +index c8a5456..21d122e 100644 --- a/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs.c +++ b/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs.c -@@ -204,8 +204,12 @@ nr_stun_get_addrs(nr_local_addr addrs[], int maxaddrs, int *count) +@@ -211,8 +211,12 @@ nr_stun_get_addrs(nr_local_addr addrs[], int maxaddrs, int *count) if (maxaddrs > 0) { memset(addrs, 0, maxaddrs * sizeof(nr_local_addr)); } @@ -598,10 +596,10 @@ index f97b32d..7857331 100644 #endif memorySize = 256 * 1024 * 1024; // Fall back to 256MB. diff --git a/ipc/chromium/moz.build b/ipc/chromium/moz.build -index 0e8504f..015993f 100644 +index 95b4384..fe10547 100644 --- a/ipc/chromium/moz.build +++ b/ipc/chromium/moz.build -@@ -106,7 +106,7 @@ if CONFIG["TARGET_OS"] == "iOS": +@@ -113,7 +113,7 @@ if CONFIG["TARGET_OS"] == "iOS": "src/base/process_util_ios.cpp", ] @@ -611,10 +609,10 @@ index 0e8504f..015993f 100644 "src/base/process_util_linux.cc", "src/base/time_posix.cc", diff --git a/ipc/chromium/src/base/message_loop.cc b/ipc/chromium/src/base/message_loop.cc -index 5e7a653..90c600e 100644 +index c07963f..5518456 100644 --- a/ipc/chromium/src/base/message_loop.cc +++ b/ipc/chromium/src/base/message_loop.cc -@@ -26,7 +26,7 @@ +@@ -27,7 +27,7 @@ # include "base/message_pump_libevent.h" #endif #if defined(XP_LINUX) || defined(__DragonFly__) || defined(XP_FREEBSD) || \ @@ -623,7 +621,7 @@ index 5e7a653..90c600e 100644 # if defined(MOZ_WIDGET_GTK) # include "base/message_pump_glib.h" # endif -@@ -280,7 +280,7 @@ MessageLoop::MessageLoop(Type type, nsISerialEventTarget* aEventTarget) +@@ -281,7 +281,7 @@ MessageLoop::MessageLoop(Type type, nsISerialEventTarget* aEventTarget) # if defined(XP_DARWIN) pump_ = base::MessagePumpMac::Create(); # elif defined(XP_LINUX) || defined(__DragonFly__) || defined(XP_FREEBSD) || \ @@ -681,10 +679,10 @@ index 23b8807..aec9dc4 100644 static const char kFDDir[] = "/proc/self/fd"; #elif defined(XP_DARWIN) diff --git a/ipc/chromium/src/chrome/common/ipc_channel_posix.cc b/ipc/chromium/src/chrome/common/ipc_channel_posix.cc -index 085e570..c7bae19 100644 +index ff65fad..9bbba93 100644 --- a/ipc/chromium/src/chrome/common/ipc_channel_posix.cc +++ b/ipc/chromium/src/chrome/common/ipc_channel_posix.cc -@@ -288,6 +288,18 @@ bool Channel::ChannelImpl::ProcessIncomingMessages() { +@@ -292,6 +292,18 @@ bool ChannelPosix::ProcessIncomingMessages() { if (cmsg->cmsg_level == SOL_SOCKET && cmsg->cmsg_type == SCM_RIGHTS) { const unsigned payload_len = cmsg->cmsg_len - CMSG_LEN(0); DCHECK(payload_len % sizeof(int) == 0); @@ -703,7 +701,7 @@ index 085e570..c7bae19 100644 wire_fds = reinterpret_cast(CMSG_DATA(cmsg)); num_wire_fds = payload_len / 4; -@@ -299,7 +311,9 @@ bool Channel::ChannelImpl::ProcessIncomingMessages() { +@@ -303,7 +315,9 @@ bool ChannelPosix::ProcessIncomingMessages() { IGNORE_EINTR(close(wire_fds[i])); return false; } @@ -727,10 +725,10 @@ index 0cfd739..439aed9 100644 # define HAVE_PIPE2 1 #endif diff --git a/ipc/glue/GeckoChildProcessHost.cpp b/ipc/glue/GeckoChildProcessHost.cpp -index c1b1c52..5d1cefd 100644 +index 83241df..05e0587 100644 --- a/ipc/glue/GeckoChildProcessHost.cpp +++ b/ipc/glue/GeckoChildProcessHost.cpp -@@ -1125,7 +1125,7 @@ Result BaseProcessLauncher::DoSetup() { +@@ -1120,7 +1120,7 @@ Result BaseProcessLauncher::DoSetup() { #if defined(MOZ_WIDGET_COCOA) || defined(XP_WIN) geckoargs::sCrashReporter.Put(CrashReporter::GetChildNotificationPipe(), mChildArgs); @@ -740,10 +738,10 @@ index c1b1c52..5d1cefd 100644 if (!childCrashFd) { return Err(LaunchError("DuplicateFileHandle failed")); diff --git a/js/src/moz.build b/js/src/moz.build -index 01fa3cb..3e15ce7 100644 +index 9b50953..cfc4c9f 100644 --- a/js/src/moz.build +++ b/js/src/moz.build -@@ -508,6 +508,11 @@ elif CONFIG["OS_ARCH"] == "WASI": +@@ -509,6 +509,11 @@ elif CONFIG["OS_ARCH"] == "WASI": "threading/noop/NoopThread.cpp", ] else: @@ -756,7 +754,7 @@ index 01fa3cb..3e15ce7 100644 "threading/posix/CpuCount.cpp", "threading/posix/PosixThread.cpp", diff --git a/js/src/util/NativeStack.cpp b/js/src/util/NativeStack.cpp -index 4e4189d..37dc13a 100644 +index e77289c..4946275 100644 --- a/js/src/util/NativeStack.cpp +++ b/js/src/util/NativeStack.cpp @@ -31,6 +31,9 @@ @@ -769,7 +767,7 @@ index 4e4189d..37dc13a 100644 #else # error "Unsupported platform" #endif -@@ -117,6 +120,14 @@ void* js::GetNativeStackBaseImpl() { +@@ -116,6 +119,14 @@ void* js::GetNativeStackBaseImpl() { # endif } @@ -820,7 +818,7 @@ index 7d63f47..2fe6932 100644 #define HAVE_GETHRTIME 0 #define HAVE_GETOPT 1 diff --git a/media/libcubeb/src/cubeb.c b/media/libcubeb/src/cubeb.c -index b0db033..efe0927 100644 +index 0511ad9..1e0b48e 100644 --- a/media/libcubeb/src/cubeb.c +++ b/media/libcubeb/src/cubeb.c @@ -79,6 +79,10 @@ oss_init(cubeb ** context, char const * context_name); @@ -1850,7 +1848,7 @@ index 7ab524b..4c5fef4 100644 # We allow warnings for third-party code that can be updated from upstream. diff --git a/mfbt/Assertions.h b/mfbt/Assertions.h -index 82a2ee5..ade709b 100644 +index c3ea652..0ef9564 100644 --- a/mfbt/Assertions.h +++ b/mfbt/Assertions.h @@ -231,7 +231,7 @@ MOZ_NoReturn(int aLine) { @@ -1863,10 +1861,10 @@ index 82a2ee5..ade709b 100644 # define MOZ_REALLY_CRASH(line) __builtin_trap() diff --git a/modules/libpref/init/StaticPrefList.yaml b/modules/libpref/init/StaticPrefList.yaml -index f689389..9fd2377 100644 +index a6c4943..f7030de 100644 --- a/modules/libpref/init/StaticPrefList.yaml +++ b/modules/libpref/init/StaticPrefList.yaml -@@ -11309,6 +11309,8 @@ +@@ -11400,6 +11400,8 @@ value: true #elif defined(XP_SOLARIS) value: true @@ -1875,7 +1873,7 @@ index f689389..9fd2377 100644 #else value: false #endif -@@ -11353,6 +11355,8 @@ +@@ -11444,6 +11446,8 @@ value: true #elif defined(XP_SOLARIS) value: true @@ -1884,7 +1882,7 @@ index f689389..9fd2377 100644 #else value: false #endif -@@ -11386,6 +11390,8 @@ +@@ -11477,6 +11481,8 @@ value: true #elif defined(XP_SOLARIS) value: true @@ -1893,7 +1891,7 @@ index f689389..9fd2377 100644 #else value: false #endif -@@ -11405,6 +11411,8 @@ +@@ -11496,6 +11502,8 @@ value: true #elif defined(XP_SOLARIS) value: true @@ -1902,7 +1900,7 @@ index f689389..9fd2377 100644 #else value: false #endif -@@ -11424,6 +11432,8 @@ +@@ -11515,6 +11523,8 @@ value: true #elif defined(XP_SOLARIS) value: true @@ -1911,7 +1909,7 @@ index f689389..9fd2377 100644 #else value: false #endif -@@ -11443,6 +11453,8 @@ +@@ -11534,6 +11544,8 @@ value: true #elif defined(XP_SOLARIS) value: true @@ -1920,7 +1918,7 @@ index f689389..9fd2377 100644 #else value: false #endif -@@ -11471,6 +11483,8 @@ +@@ -11562,6 +11574,8 @@ value: true #elif defined(XP_SOLARIS) value: true @@ -1929,7 +1927,7 @@ index f689389..9fd2377 100644 #else value: false #endif -@@ -12423,6 +12437,8 @@ +@@ -12525,6 +12539,8 @@ type: bool #if defined(MOZ_WIDGET_ANDROID) value: true @@ -2263,10 +2261,10 @@ index f40c9ec..09eec7d 100644 elif version: print("Your version of Rust (%s) is too old." % version) diff --git a/python/mozboot/mozboot/bootstrap.py b/python/mozboot/mozboot/bootstrap.py -index 7460eb1..f0ca764 100644 +index 083aa60..e4d216d 100644 --- a/python/mozboot/mozboot/bootstrap.py +++ b/python/mozboot/mozboot/bootstrap.py -@@ -33,6 +33,7 @@ from mozboot.centosfedora import CentOSFedoraBootstrapper +@@ -34,6 +34,7 @@ from mozboot.centosfedora import CentOSFedoraBootstrapper from mozboot.debian import DebianBootstrapper from mozboot.freebsd import FreeBSDBootstrapper from mozboot.gentoo import GentooBootstrapper @@ -2274,7 +2272,7 @@ index 7460eb1..f0ca764 100644 from mozboot.mozconfig import MozconfigBuilder from mozboot.mozillabuild import MozillaBuildBootstrapper from mozboot.openbsd import OpenBSDBootstrapper -@@ -308,6 +309,10 @@ class Bootstrapper: +@@ -311,6 +312,10 @@ class Bootstrapper: args["version"] = platform.release() args["flavor"] = platform.system() @@ -2393,10 +2391,10 @@ index ca05c3b..c9bf842 100644 unsigned char certFingerprint[SHA256_LENGTH]; srv = PK11_HashBuf(SEC_OID_SHA256, certFingerprint, cert->derCert.data, diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml -index 43415b9..4205288 100644 +index 1e6a82e..96bb4a7 100644 --- a/supply-chain/audits.toml +++ b/supply-chain/audits.toml -@@ -2635,6 +2635,12 @@ criteria = "safe-to-deploy" +@@ -2761,6 +2761,12 @@ criteria = "safe-to-deploy" delta = "6.0.1 -> 6.0.2" notes = "I'm the author of the changes in this version of the crate." @@ -2409,7 +2407,7 @@ index 43415b9..4205288 100644 [[audits.goblin]] who = "Jan-Erik Rediger " criteria = "safe-to-deploy" -@@ -3327,6 +3333,12 @@ criteria = "safe-to-deploy" +@@ -3568,6 +3574,12 @@ criteria = "safe-to-deploy" version = "0.14.0" notes = "Victor and Myk developed this crate at Mozilla." @@ -2423,7 +2421,7 @@ index 43415b9..4205288 100644 who = "Mike Hommey " criteria = "safe-to-deploy" diff --git a/supply-chain/config.toml b/supply-chain/config.toml -index 37f99fc..9a99f8f 100644 +index 9e62ee8..6320ee1 100644 --- a/supply-chain/config.toml +++ b/supply-chain/config.toml @@ -72,6 +72,10 @@ notes = "Used for testing." @@ -2488,10 +2486,10 @@ index 1937db3..08fdd1d 100644 // Fallback implementation of `GetTID` using `pthread_self`. diff --git a/third_party/abseil-cpp/absl/log/internal/log_message.cc b/third_party/abseil-cpp/absl/log/internal/log_message.cc -index 402883a..2113df0 100644 +index 8dc5722..44a5e3f 100644 --- a/third_party/abseil-cpp/absl/log/internal/log_message.cc +++ b/third_party/abseil-cpp/absl/log/internal/log_message.cc -@@ -222,7 +222,7 @@ void LogMessage::LogMessageData::InitializeEncodingAndFormat() { +@@ -224,7 +224,7 @@ void LogMessage::LogMessageData::InitializeEncodingAndFormat() { EncodeVarint(EventTag::kSeverity, ProtoSeverity(entry.log_severity(), entry.verbosity()), &encoded_remaining()); @@ -2501,10 +2499,10 @@ index 402883a..2113df0 100644 void LogMessage::LogMessageData::FinalizeEncodingAndFormat() { diff --git a/third_party/chromium/build/config/BUILDCONFIG.gn b/third_party/chromium/build/config/BUILDCONFIG.gn -index 889bdb9..9400541 100644 +index 4bb38fe..f42d1e9 100644 --- a/third_party/chromium/build/config/BUILDCONFIG.gn +++ b/third_party/chromium/build/config/BUILDCONFIG.gn -@@ -184,7 +184,7 @@ if (host_toolchain == "") { +@@ -206,7 +206,7 @@ if (host_toolchain == "") { # TODO(dpranke): Add some sort of assert here that verifies that # no toolchain omitted host_toolchain from its toolchain_args(). @@ -2513,16 +2511,16 @@ index 889bdb9..9400541 100644 if (target_os != "linux") { host_toolchain = "//chromium/build/toolchain/linux:clang_$host_cpu" } else if (is_clang) { -@@ -222,7 +222,7 @@ if (target_os == "android") { - assert(host_os == "linux" || host_os == "mac", - "Android builds are only supported on Linux and Mac hosts.") +@@ -246,7 +246,7 @@ if (target_os == "android") { + # Targeting android on Mac is best-effort and not guaranteed to work. + #assert(host_os == "linux", "Android builds are only supported on Linux.") _default_toolchain = "//chromium/build/toolchain/android:android_clang_$target_cpu" -} else if (target_os == "chromeos" || target_os == "linux" || target_os == "openbsd") { +} else if (target_os == "chromeos" || target_os == "linux" || target_os == "openbsd" || host_os == "haiku") { # See comments in build/toolchain/cros/BUILD.gn about board compiles. if (is_clang) { _default_toolchain = "//chromium/build/toolchain/linux:clang_$target_cpu" -@@ -286,6 +286,7 @@ if (custom_toolchain != "") { +@@ -312,6 +312,7 @@ if (custom_toolchain != "") { is_android = current_os == "android" is_chromeos = current_os == "chromeos" is_fuchsia = current_os == "fuchsia" @@ -2531,10 +2529,10 @@ index 889bdb9..9400541 100644 is_linux = current_os == "linux" is_bsd = current_os == "openbsd" diff --git a/third_party/chromium/build/config/gcc/BUILD.gn b/third_party/chromium/build/config/gcc/BUILD.gn -index ebfa332..fbc53fe 100644 +index 6e291bb..89c0f24 100644 --- a/third_party/chromium/build/config/gcc/BUILD.gn +++ b/third_party/chromium/build/config/gcc/BUILD.gn -@@ -91,7 +91,7 @@ if (is_component_build && !is_android) { +@@ -93,7 +93,7 @@ if (is_component_build && !is_android) { # Settings for executables. config("executable_config") { configs = executable_and_shared_library_configs_ @@ -2543,6 +2541,44 @@ index ebfa332..fbc53fe 100644 if (is_android) { ldflags += [ "-Bdynamic", +diff --git a/third_party/chromium/build/config/ozone.gni b/third_party/chromium/build/config/ozone.gni +index 9d98d89..0bd4076 100644 +--- a/third_party/chromium/build/config/ozone.gni ++++ b/third_party/chromium/build/config/ozone.gni +@@ -8,7 +8,7 @@ import("//chromium/build/toolchain/toolchain.gni") + declare_args() { + # Indicates if Ozone is enabled. Ozone is a low-level library layer for Linux + # that does not require X11. +- use_ozone = is_chromeos || is_fuchsia || is_linux || is_bsd ++ use_ozone = is_chromeos || is_fuchsia || is_linux || is_bsd || is_haiku + } + + declare_args() { +@@ -76,6 +76,11 @@ declare_args() { + } else { + ozone_platform = "cast" + } ++ } else if (is_haiku) { ++ ozone_platform = "wayland" ++ ozone_platform_drm = false ++ ozone_platform_x11 = false ++ ozone_platform_wayland = true + } else if (is_chromeos) { + ozone_platform = "x11" + ozone_platform_drm = true +diff --git a/third_party/chromium/build/toolchain/toolchain.gni b/third_party/chromium/build/toolchain/toolchain.gni +index 754f0e3..185b04f 100644 +--- a/third_party/chromium/build/toolchain/toolchain.gni ++++ b/third_party/chromium/build/toolchain/toolchain.gni +@@ -75,7 +75,7 @@ if (host_os == "mac") { + host_shlib_extension = ".dylib" + } else if (host_os == "win") { + host_shlib_extension = ".dll" +-} else if (host_os == "linux" || host_os == "aix" || host_os == "zos") { ++} else if (host_os == "linux" || host_os == "aix" || host_os == "zos" || host_os == "haiku") { + host_shlib_extension = ".so" + } else { + assert(false, "Host platform not supported") diff --git a/third_party/dav1d/src/thread.h b/third_party/dav1d/src/thread.h index 459aace..b2989da 100644 --- a/third_party/dav1d/src/thread.h @@ -2586,7 +2622,7 @@ index 9f3dac4..e5ef5a8 100644 *handle = dlopen(lib_name, flags); if (!*handle) { diff --git a/third_party/libwebrtc/BUILD.gn b/third_party/libwebrtc/BUILD.gn -index 3add82d..d874ebe 100644 +index 0a9f3e4..0e56cd1 100644 --- a/third_party/libwebrtc/BUILD.gn +++ b/third_party/libwebrtc/BUILD.gn @@ -211,7 +211,7 @@ config("common_inherited_config") { @@ -2618,10 +2654,10 @@ index 3add82d..d874ebe 100644 defines += [ "WEBRTC_WIN" ] } diff --git a/third_party/libwebrtc/modules/desktop_capture/BUILD.gn b/third_party/libwebrtc/modules/desktop_capture/BUILD.gn -index 2703ab2..27fb24c 100644 +index 84f1254..efec749 100644 --- a/third_party/libwebrtc/modules/desktop_capture/BUILD.gn +++ b/third_party/libwebrtc/modules/desktop_capture/BUILD.gn -@@ -354,6 +354,19 @@ rtc_library("desktop_capture") { +@@ -355,6 +355,19 @@ rtc_library("desktop_capture") { ] } @@ -2641,7 +2677,7 @@ index 2703ab2..27fb24c 100644 if (rtc_use_x11_extensions) { sources += [ "linux/x11/mouse_cursor_monitor_x11.cc", -@@ -396,7 +409,7 @@ rtc_library("desktop_capture") { +@@ -402,7 +415,7 @@ rtc_library("desktop_capture") { } if (!is_win && !is_mac && !rtc_use_x11_extensions && !rtc_use_pipewire && @@ -3572,10 +3608,10 @@ index 0000000..fe33782 + +#endif // MODULES_VIDEO_CAPTURE_MAIN_SOURCE_HAIKU_VIDEO_CAPTURE_HAIKU_H_ diff --git a/third_party/libwebrtc/modules/video_capture/video_capture_factory.cc b/third_party/libwebrtc/modules/video_capture/video_capture_factory.cc -index 0d12966..1fef378 100644 +index 4241afe..3b0d320 100644 --- a/third_party/libwebrtc/modules/video_capture/video_capture_factory.cc +++ b/third_party/libwebrtc/modules/video_capture/video_capture_factory.cc -@@ -24,7 +24,7 @@ rtc::scoped_refptr VideoCaptureFactory::Create( +@@ -24,7 +24,7 @@ scoped_refptr VideoCaptureFactory::Create( [[maybe_unused]] const char* deviceUniqueIdUTF8) { // This is only implemented on pure Linux and WEBRTC_LINUX is defined for // Android as well @@ -3594,10 +3630,10 @@ index 0d12966..1fef378 100644 #else return videocapturemodule::VideoCaptureImpl::CreateDeviceInfo(options); diff --git a/third_party/libwebrtc/rtc_base/BUILD.gn b/third_party/libwebrtc/rtc_base/BUILD.gn -index 90218b6..1cf17a2 100644 +index 337d7f6..21dca74 100644 --- a/third_party/libwebrtc/rtc_base/BUILD.gn +++ b/third_party/libwebrtc/rtc_base/BUILD.gn -@@ -1144,6 +1144,10 @@ rtc_library("ifaddrs_converter") { +@@ -1139,6 +1139,10 @@ rtc_library("ifaddrs_converter") { "ifaddrs_converter.h", ] } @@ -3609,10 +3645,10 @@ index 90218b6..1cf17a2 100644 rtc_library("rolling_accumulator") { diff --git a/third_party/libwebrtc/rtc_base/logging.cc b/third_party/libwebrtc/rtc_base/logging.cc -index ea33c3b..dac888a 100644 +index 4e0b9ac..6eea35e 100644 --- a/third_party/libwebrtc/rtc_base/logging.cc +++ b/third_party/libwebrtc/rtc_base/logging.cc -@@ -116,7 +116,11 @@ std::string LogLineRef::DefaultLogLine() const { +@@ -120,7 +120,11 @@ std::string LogLineRef::DefaultLogLine() const { log_output << timestamp; } if (thread_id_.has_value()) { @@ -3625,10 +3661,10 @@ index ea33c3b..dac888a 100644 if (!filename_.empty()) { #if defined(WEBRTC_ANDROID) diff --git a/third_party/libwebrtc/rtc_base/physical_socket_server.cc b/third_party/libwebrtc/rtc_base/physical_socket_server.cc -index fb0eb7e..8336381 100644 +index 3ec82f3..3244ffb 100644 --- a/third_party/libwebrtc/rtc_base/physical_socket_server.cc +++ b/third_party/libwebrtc/rtc_base/physical_socket_server.cc -@@ -75,7 +75,7 @@ typedef void* SockOptArg; +@@ -85,7 +85,7 @@ typedef void* SockOptArg; #endif // WEBRTC_POSIX @@ -3637,7 +3673,7 @@ index fb0eb7e..8336381 100644 #if defined(WEBRTC_LINUX) #include #endif -@@ -375,7 +375,7 @@ int PhysicalSocket::SetOption(Option opt, int value) { +@@ -385,7 +385,7 @@ int PhysicalSocket::SetOption(Option opt, int value) { ecn_ = value; value = dscp_ + (ecn_ & kEcnMask); } @@ -3646,7 +3682,7 @@ index fb0eb7e..8336381 100644 if (sopt == IPV6_TCLASS) { // Set the IPv4 option in all cases to support dual-stack sockets. // Don't bother checking the return code, as this is expected to fail if -@@ -519,7 +519,7 @@ int PhysicalSocket::DoReadFromSocket(void* buffer, +@@ -529,7 +529,7 @@ int PhysicalSocket::DoReadFromSocket(void* buffer, socklen_t addr_len = sizeof(addr_storage); sockaddr* addr = reinterpret_cast(&addr_storage); @@ -3655,7 +3691,7 @@ index fb0eb7e..8336381 100644 int received = 0; iovec iov = {.iov_base = buffer, .iov_len = length}; msghdr msg = {.msg_name = nullptr, .msg_namelen = 0, .msg_iov = &iov, .msg_iovlen = 1}; -@@ -704,7 +704,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) { +@@ -714,7 +714,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) { #elif defined(WEBRTC_MAC) || defined(WEBRTC_BSD) || defined(__native_client__) RTC_LOG(LS_WARNING) << "Socket::OPT_DONTFRAGMENT not supported."; return -1; @@ -3664,7 +3700,7 @@ index fb0eb7e..8336381 100644 *slevel = IPPROTO_IP; *sopt = IP_MTU_DISCOVER; break; -@@ -722,7 +722,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) { +@@ -732,7 +732,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) { *sopt = TCP_NODELAY; break; case OPT_DSCP: @@ -3673,7 +3709,7 @@ index fb0eb7e..8336381 100644 if (family_ == AF_INET6) { *slevel = IPPROTO_IPV6; *sopt = IPV6_TCLASS; -@@ -736,7 +736,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) { +@@ -746,7 +746,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) { return -1; #endif case OPT_SEND_ECN: @@ -3682,7 +3718,7 @@ index fb0eb7e..8336381 100644 if (family_ == AF_INET6) { *slevel = IPPROTO_IPV6; *sopt = IPV6_TCLASS; -@@ -750,7 +750,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) { +@@ -760,7 +760,7 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) { return -1; #endif case OPT_RECV_ECN: @@ -3691,7 +3727,7 @@ index fb0eb7e..8336381 100644 if (family_ == AF_INET6) { *slevel = IPPROTO_IPV6; *sopt = IPV6_RECVTCLASS; -@@ -769,22 +769,30 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) { +@@ -779,22 +779,30 @@ int PhysicalSocket::TranslateOption(Option opt, int* slevel, int* sopt) { *slevel = SOL_SOCKET; *sopt = SO_KEEPALIVE; break; @@ -3722,7 +3758,7 @@ index fb0eb7e..8336381 100644 case OPT_TCP_USER_TIMEOUT: #if defined(WEBRTC_LINUX) || defined(WEBRTC_ANDROID) *slevel = IPPROTO_TCP; -@@ -833,7 +841,7 @@ bool SocketDispatcher::Initialize() { +@@ -843,7 +851,7 @@ bool SocketDispatcher::Initialize() { #if defined(WEBRTC_WIN) u_long argp = 1; ioctlsocket(s_, FIONBIO, &argp); @@ -3732,10 +3768,10 @@ index fb0eb7e..8336381 100644 int value = 1; // Attempt to get receive packet timestamp from the socket. diff --git a/third_party/libwebrtc/rtc_base/platform_thread_types.cc b/third_party/libwebrtc/rtc_base/platform_thread_types.cc -index c3c6955..5449ead 100644 +index 712ae2c..e708aa5 100644 --- a/third_party/libwebrtc/rtc_base/platform_thread_types.cc +++ b/third_party/libwebrtc/rtc_base/platform_thread_types.cc -@@ -15,6 +15,10 @@ +@@ -16,6 +16,10 @@ #include #endif @@ -3746,7 +3782,7 @@ index c3c6955..5449ead 100644 #if defined(WEBRTC_WIN) #include "rtc_base/arraysize.h" -@@ -44,6 +48,8 @@ PlatformThreadId CurrentThreadId() { +@@ -46,6 +50,8 @@ PlatformThreadId CurrentThreadId() { return gettid(); #elif defined(WEBRTC_FUCHSIA) return zx_thread_self(); @@ -3755,7 +3791,7 @@ index c3c6955..5449ead 100644 #elif defined(WEBRTC_LINUX) return syscall(__NR_gettid); #elif defined(__EMSCRIPTEN__) -@@ -118,6 +124,8 @@ void SetCurrentThreadName(const char* name) { +@@ -120,6 +126,8 @@ void SetCurrentThreadName(const char* name) { prctl(PR_SET_NAME, reinterpret_cast(name)); // NOLINT #elif defined(WEBRTC_MAC) || defined(WEBRTC_IOS) pthread_setname_np(name); @@ -3780,19 +3816,19 @@ index 62e1694..70186bb 100644 if (is_win) { diff --git a/third_party/libwebrtc/webrtc.gni b/third_party/libwebrtc/webrtc.gni -index 17306b7..bf3b62e 100644 +index 0a5fbcd..ca04a27 100644 --- a/third_party/libwebrtc/webrtc.gni +++ b/third_party/libwebrtc/webrtc.gni @@ -145,7 +145,7 @@ declare_args() { rtc_build_tools = false # Set this to false to skip building code that requires X11. -- rtc_use_x11 = use_x11 -+ rtc_use_x11 = use_x11 && !is_haiku +- rtc_use_x11 = ozone_platform_x11 ++ rtc_use_x11 = ozone_platform_x11 && !is_haiku # Set this to use PipeWire on the Wayland display server. # By default it's only enabled on desktop Linux (excludes ChromeOS) and -@@ -356,7 +356,7 @@ rtc_opus_dir = "//third_party/opus" +@@ -361,7 +361,7 @@ rtc_opus_dir = "//third_party/opus" # Desktop capturer is supported only on Windows, OSX and Linux. rtc_desktop_capture_supported = @@ -4153,18 +4189,18 @@ index 0000000..fc441bb +] \ No newline at end of file diff --git a/third_party/rust/mtu/.cargo-checksum.json b/third_party/rust/mtu/.cargo-checksum.json -index 599d7cd..a0fbf2f 100644 +index 4c168fc..30cdf1a 100644 --- a/third_party/rust/mtu/.cargo-checksum.json +++ b/third_party/rust/mtu/.cargo-checksum.json @@ -1 +1 @@ --{"files":{"CODE_OF_CONDUCT.md":"f7b4cba1deaa0a77bd611c04c84ef5b6859e44c8370f7513fe688fb9531b913b","Cargo.lock":"0d7b4f80f302400b5fba9847542ab3a0e94dd50bb0d27111927a6e4037b42eef","Cargo.toml":"82ab8662dd7a9c324bd23a7234fa2b8d6df9a9cab2b9baa778039bb55666bfb8","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"4ad721b5b6a3d39ca3e2202f403d897c4a1d42896486dd58963a81f8e64ef61d","README.md":"2c9cce2eb06f0897e9b2fb68d8fa640da581bf440c26f266f8af5b3edb02dc6a","SECURITY.md":"75455814b6cf997e22a927eb979b4356d788583aa1eb96e90853aaab0f82ad1b","build.rs":"c26ac0385171924eefec5ce864067419bb023961b054abaf060d8da567dc6241","src/bsd.rs":"e680ddb399419bb67219fa1c0d3e6672d32023f325584869bd050e2f2ecc8ff9","src/lib.rs":"a59ae67763bc6bb9e6a4f7e7af61fed722ca032b667276a68e6ad687f1fe1e6e","src/linux.rs":"4e99612a04d744e2ca22b2e353faa500b37cb58caddaecb7566b4748aa1f7209","src/routesocket.rs":"be837947e2c3f9301a174499217fe8920ff492918bf85ca5eb281eb7ad2240e1","src/windows.rs":"b139c7aaa0c39415ce1773f1c9569be1a6b82dfe82334ab0c6cb80e7d232363e"},"package":"4c30d3771729ec4349aae3b1a7c0b6b4a1500459e60b1fda95fe0657c3711574"} +-{"files":{"CODE_OF_CONDUCT.md":"f7b4cba1deaa0a77bd611c04c84ef5b6859e44c8370f7513fe688fb9531b913b","Cargo.lock":"87fd40e386e610a683ac57e8f20cdff83ba1617a8d963f30f23c4dc0f0e94675","Cargo.toml":"5599f073bcf2bd5a3d18b39e5f501ff66543625cfc8f70c5738045158fcbf4a5","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"4ad721b5b6a3d39ca3e2202f403d897c4a1d42896486dd58963a81f8e64ef61d","README.md":"24df0e24154b7f0096570ad221aea02bd53a0f1124a2adafff5730af5443a65c","SECURITY.md":"75455814b6cf997e22a927eb979b4356d788583aa1eb96e90853aaab0f82ad1b","build.rs":"a4bcd0562c80914a8e909e8b10507605bfd6f0f268fad9ef4d79f4c48bdaed6c","src/bsd.rs":"d8c078fc5a407df32862f404ead6acdf647e0f79a341f7575562886bfc037ceb","src/lib.rs":"5045fdb6e15886f611a41216c47a284e53532de0c69e1b2d330358ed04acab50","src/linux.rs":"aecc6acbea2419dd6cc31e916148e438d8cec20cf001758042299ff2ccc81d39","src/routesocket.rs":"be837947e2c3f9301a174499217fe8920ff492918bf85ca5eb281eb7ad2240e1","src/windows.rs":"d7e18d55b3be5462d2041fc22fb22cf1fc163ec30b107a3274f2bd22ad618411"},"package":"3e3124fb16267c5a77ce8cd015bcb5bb3f8aab28ec32d89d65f6a31c5c1306a0"} \ No newline at end of file -+{"files":{"CODE_OF_CONDUCT.md":"f7b4cba1deaa0a77bd611c04c84ef5b6859e44c8370f7513fe688fb9531b913b","Cargo.lock":"0d7b4f80f302400b5fba9847542ab3a0e94dd50bb0d27111927a6e4037b42eef","Cargo.toml":"82ab8662dd7a9c324bd23a7234fa2b8d6df9a9cab2b9baa778039bb55666bfb8","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"4ad721b5b6a3d39ca3e2202f403d897c4a1d42896486dd58963a81f8e64ef61d","README.md":"2c9cce2eb06f0897e9b2fb68d8fa640da581bf440c26f266f8af5b3edb02dc6a","SECURITY.md":"75455814b6cf997e22a927eb979b4356d788583aa1eb96e90853aaab0f82ad1b","build.rs":"3ef3722b2dea6248b55e58e9884e618633b63caee15029d2fc993264a239b5f6","src/bsd.rs":"e680ddb399419bb67219fa1c0d3e6672d32023f325584869bd050e2f2ecc8ff9","src/lib.rs":"e12374910adce285b092808ea2254cd5294ea8d8aec6c8c8998cee1b01df4ee4","src/linux.rs":"4e99612a04d744e2ca22b2e353faa500b37cb58caddaecb7566b4748aa1f7209","src/routesocket.rs":"be837947e2c3f9301a174499217fe8920ff492918bf85ca5eb281eb7ad2240e1","src/windows.rs":"b139c7aaa0c39415ce1773f1c9569be1a6b82dfe82334ab0c6cb80e7d232363e"},"package":"4c30d3771729ec4349aae3b1a7c0b6b4a1500459e60b1fda95fe0657c3711574"} ++{"files":{"CODE_OF_CONDUCT.md":"f7b4cba1deaa0a77bd611c04c84ef5b6859e44c8370f7513fe688fb9531b913b","Cargo.lock":"87fd40e386e610a683ac57e8f20cdff83ba1617a8d963f30f23c4dc0f0e94675","Cargo.toml":"5599f073bcf2bd5a3d18b39e5f501ff66543625cfc8f70c5738045158fcbf4a5","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"4ad721b5b6a3d39ca3e2202f403d897c4a1d42896486dd58963a81f8e64ef61d","README.md":"24df0e24154b7f0096570ad221aea02bd53a0f1124a2adafff5730af5443a65c","SECURITY.md":"75455814b6cf997e22a927eb979b4356d788583aa1eb96e90853aaab0f82ad1b","build.rs":"2c51040e4db5d6cbe0cfcc3ed1121c628c254e88dbb1c00a27036ff8c1aa8f26","src/bsd.rs":"d8c078fc5a407df32862f404ead6acdf647e0f79a341f7575562886bfc037ceb","src/lib.rs":"b213b34b5cd1c99c2398c2bc5040394a92426e1f87d9525df88455dedab9daec","src/linux.rs":"aecc6acbea2419dd6cc31e916148e438d8cec20cf001758042299ff2ccc81d39","src/routesocket.rs":"be837947e2c3f9301a174499217fe8920ff492918bf85ca5eb281eb7ad2240e1","src/windows.rs":"d7e18d55b3be5462d2041fc22fb22cf1fc163ec30b107a3274f2bd22ad618411"},"package":"3e3124fb16267c5a77ce8cd015bcb5bb3f8aab28ec32d89d65f6a31c5c1306a0"} diff --git a/third_party/rust/mtu/build.rs b/third_party/rust/mtu/build.rs -index fdd7366..7b29700 100644 +index a649819..14dbb00 100644 --- a/third_party/rust/mtu/build.rs +++ b/third_party/rust/mtu/build.rs -@@ -47,14 +47,14 @@ fn bindgen() { +@@ -40,14 +40,14 @@ fn bindgen() { // Platforms currently not supported. // // See . @@ -4182,10 +4218,10 @@ index fdd7366..7b29700 100644 bindgen::Builder::default() .header_contents("rtnetlink.h", "#include ") diff --git a/third_party/rust/mtu/src/lib.rs b/third_party/rust/mtu/src/lib.rs -index 14fcc2a..104cef6 100644 +index f67a5c3..063cf85 100644 --- a/third_party/rust/mtu/src/lib.rs +++ b/third_party/rust/mtu/src/lib.rs -@@ -101,7 +101,7 @@ const fn aligned_by(size: usize, align: usize) -> usize { +@@ -108,7 +108,7 @@ const fn aligned_by(size: usize, align: usize) -> usize { // Platforms currently not supported. // // See . @@ -4195,15 +4231,15 @@ index 14fcc2a..104cef6 100644 return Err(default_err()); } diff --git a/third_party/rust/quinn-udp/.cargo-checksum.json b/third_party/rust/quinn-udp/.cargo-checksum.json -index 2ada89f..33a4a07 100644 +index a23c804..9236df3 100644 --- a/third_party/rust/quinn-udp/.cargo-checksum.json +++ b/third_party/rust/quinn-udp/.cargo-checksum.json @@ -1 +1 @@ --{"files":{"Cargo.lock":"b6db9f61ff4fdb22fb4a928df627f66d2a12b699476b244ea5260e010d8c2ae1","Cargo.toml":"397318dc0e80f559c5f570a71e5497fd2a5ab1b4daab1f365d094f1612198968","LICENSE-APACHE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","LICENSE-MIT":"4b2d0aca6789fa39e03d6738e869ea0988cceba210ca34ebb59c15c463e93a04","benches/throughput.rs":"86cb85d2ae07169da8c279861c53b7a055168aaaa91155576c633b8724748db6","build.rs":"1d7ecadda4a26fb0eba598789eef9b99a1b4febba9bcb61a34f0c92b1d1bbaeb","src/cmsg/mod.rs":"ccf970026c8578b1c4661fbe106093dfb62b084a231ecbb4c62eaa10df5822fe","src/cmsg/unix.rs":"7917bce2f3c8e844eca2e4cfea82669b2a31cf311321dc42532626db4ee42de8","src/cmsg/windows.rs":"6fb936ec4a283efc5796872e777441e3039c40589073865644a8ef7936af4f4b","src/fallback.rs":"1e59ea16c6e1487bbb6aa759e349000431474aa245960512cb3b5117a1ed9e21","src/lib.rs":"77d48436bbfcccaea8dc3f061acc874ef5089148bf1700fc7a61b1b3d1b575e1","src/unix.rs":"ae3cc0de15c0ec03b4aaa108a69406ee62d3b57abf5226ccd8f8e66b85c95d2d","src/windows.rs":"43da25457cb17c61369c3ba2c1d98f0ff758c5ea3207ae22969cca1f620b54af","tests/tests.rs":"bd4ee24b0e1ccab9beb444541b472bc1e815e2aba19d75572a379b6e1533449c"},"package":"ee4e529991f949c5e25755532370b8af5d114acae52326361d68d47af64aa842"} +-{"files":{"Cargo.lock":"39882ba9584ef645766dbc62a5c9e3ee2a975f62f2c4d22f6abef49a7a528388","Cargo.toml":"7ad4bf29c5b820a2d3a1c7e1b016269f6d501b3067974b56b66577fca1906af0","LICENSE-APACHE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","LICENSE-MIT":"4b2d0aca6789fa39e03d6738e869ea0988cceba210ca34ebb59c15c463e93a04","benches/throughput.rs":"86cb85d2ae07169da8c279861c53b7a055168aaaa91155576c633b8724748db6","build.rs":"1d7ecadda4a26fb0eba598789eef9b99a1b4febba9bcb61a34f0c92b1d1bbaeb","src/cmsg/mod.rs":"ccf970026c8578b1c4661fbe106093dfb62b084a231ecbb4c62eaa10df5822fe","src/cmsg/unix.rs":"7917bce2f3c8e844eca2e4cfea82669b2a31cf311321dc42532626db4ee42de8","src/cmsg/windows.rs":"6fb936ec4a283efc5796872e777441e3039c40589073865644a8ef7936af4f4b","src/fallback.rs":"1e59ea16c6e1487bbb6aa759e349000431474aa245960512cb3b5117a1ed9e21","src/lib.rs":"77d48436bbfcccaea8dc3f061acc874ef5089148bf1700fc7a61b1b3d1b575e1","src/unix.rs":"2c2a32c3df9d27cc8964b46681700215ecf1f1baa6a363b88f1f11bdd4c92cea","src/windows.rs":"43da25457cb17c61369c3ba2c1d98f0ff758c5ea3207ae22969cca1f620b54af","tests/tests.rs":"bd4ee24b0e1ccab9beb444541b472bc1e815e2aba19d75572a379b6e1533449c"},"package":"fcebb1209ee276352ef14ff8732e24cc2b02bbac986cd74a4c81bcb2f9881970"} \ No newline at end of file -+{"files":{"Cargo.lock":"b6db9f61ff4fdb22fb4a928df627f66d2a12b699476b244ea5260e010d8c2ae1","Cargo.toml":"397318dc0e80f559c5f570a71e5497fd2a5ab1b4daab1f365d094f1612198968","LICENSE-APACHE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","LICENSE-MIT":"4b2d0aca6789fa39e03d6738e869ea0988cceba210ca34ebb59c15c463e93a04","benches/throughput.rs":"86cb85d2ae07169da8c279861c53b7a055168aaaa91155576c633b8724748db6","build.rs":"1d7ecadda4a26fb0eba598789eef9b99a1b4febba9bcb61a34f0c92b1d1bbaeb","src/cmsg/mod.rs":"ccf970026c8578b1c4661fbe106093dfb62b084a231ecbb4c62eaa10df5822fe","src/cmsg/unix.rs":"7917bce2f3c8e844eca2e4cfea82669b2a31cf311321dc42532626db4ee42de8","src/cmsg/windows.rs":"6fb936ec4a283efc5796872e777441e3039c40589073865644a8ef7936af4f4b","src/fallback.rs":"1e59ea16c6e1487bbb6aa759e349000431474aa245960512cb3b5117a1ed9e21","src/lib.rs":"77d48436bbfcccaea8dc3f061acc874ef5089148bf1700fc7a61b1b3d1b575e1","src/unix.rs":"6023c09ad7052ca141f5dc6eb797bed1928b5d083c05e35cb4911780f5ac2329","src/windows.rs":"43da25457cb17c61369c3ba2c1d98f0ff758c5ea3207ae22969cca1f620b54af","tests/tests.rs":"bd4ee24b0e1ccab9beb444541b472bc1e815e2aba19d75572a379b6e1533449c"},"package":"ee4e529991f949c5e25755532370b8af5d114acae52326361d68d47af64aa842"} ++{"files":{"Cargo.lock":"39882ba9584ef645766dbc62a5c9e3ee2a975f62f2c4d22f6abef49a7a528388","Cargo.toml":"7ad4bf29c5b820a2d3a1c7e1b016269f6d501b3067974b56b66577fca1906af0","LICENSE-APACHE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","LICENSE-MIT":"4b2d0aca6789fa39e03d6738e869ea0988cceba210ca34ebb59c15c463e93a04","benches/throughput.rs":"86cb85d2ae07169da8c279861c53b7a055168aaaa91155576c633b8724748db6","build.rs":"1d7ecadda4a26fb0eba598789eef9b99a1b4febba9bcb61a34f0c92b1d1bbaeb","src/cmsg/mod.rs":"ccf970026c8578b1c4661fbe106093dfb62b084a231ecbb4c62eaa10df5822fe","src/cmsg/unix.rs":"7917bce2f3c8e844eca2e4cfea82669b2a31cf311321dc42532626db4ee42de8","src/cmsg/windows.rs":"6fb936ec4a283efc5796872e777441e3039c40589073865644a8ef7936af4f4b","src/fallback.rs":"1e59ea16c6e1487bbb6aa759e349000431474aa245960512cb3b5117a1ed9e21","src/lib.rs":"77d48436bbfcccaea8dc3f061acc874ef5089148bf1700fc7a61b1b3d1b575e1","src/unix.rs":"a71b09bc3d274fc4c43f2f2f3d8b655ee6ae12e6144ee8de99764fc9cc37b40e","src/windows.rs":"43da25457cb17c61369c3ba2c1d98f0ff758c5ea3207ae22969cca1f620b54af","tests/tests.rs":"bd4ee24b0e1ccab9beb444541b472bc1e815e2aba19d75572a379b6e1533449c"},"package":"fcebb1209ee276352ef14ff8732e24cc2b02bbac986cd74a4c81bcb2f9881970"} diff --git a/third_party/rust/quinn-udp/src/unix.rs b/third_party/rust/quinn-udp/src/unix.rs -index c892796..8c3bc81 100644 +index 3e7212f..a95924b 100644 --- a/third_party/rust/quinn-udp/src/unix.rs +++ b/third_party/rust/quinn-udp/src/unix.rs @@ -53,9 +53,9 @@ extern "C" { @@ -4895,10 +4931,10 @@ index 3e796cb..005a31d 100644 return elemString; diff --git a/toolkit/moz.configure b/toolkit/moz.configure -index 77069ea..9838fc4 100644 +index 44b91b7..a2baa00 100644 --- a/toolkit/moz.configure +++ b/toolkit/moz.configure -@@ -296,6 +296,8 @@ def audio_backends_default(target): +@@ -295,6 +295,8 @@ def audio_backends_default(target): return ("sndio",) elif target.kernel == "Darwin": return ("audiounit",) @@ -4907,7 +4943,7 @@ index 77069ea..9838fc4 100644 elif target.os == "NetBSD": return ("sunaudio",) elif target.os == "SunOS": -@@ -313,6 +315,7 @@ option( +@@ -312,6 +314,7 @@ option( "aaudio", "alsa", "audiounit", @@ -4915,7 +4951,7 @@ index 77069ea..9838fc4 100644 "jack", "opensl", "oss", -@@ -351,6 +354,11 @@ def imply_audiounit(values, target): +@@ -350,6 +353,11 @@ def imply_audiounit(values, target): return any("audiounit" in value for value in values) or None @@ -4927,7 +4963,7 @@ index 77069ea..9838fc4 100644 @depends("--enable-audio-backends") def imply_jack(values): return any("jack" in value for value in values) or None -@@ -414,6 +422,8 @@ imply_option( +@@ -413,6 +421,8 @@ imply_option( set_config("MOZ_AUDIOUNIT_RUST", imply_audiounit, when="--enable-audio-backends") @@ -4936,7 +4972,7 @@ index 77069ea..9838fc4 100644 imply_option( "--enable-jack", imply_jack, reason="--enable-audio-backends", when=use_pkg_config ) -@@ -3104,6 +3114,7 @@ def forkserver_default(target, build_project): +@@ -3111,6 +3121,7 @@ def forkserver_default(target, build_project): (target.os == "GNU" and target.kernel == "Linux") or target.os == "FreeBSD" or target.os == "OpenBSD" @@ -4944,7 +4980,7 @@ index 77069ea..9838fc4 100644 ) -@@ -3831,7 +3842,7 @@ with only_when(compile_environment): +@@ -3838,7 +3849,7 @@ with only_when(compile_environment): @depends(target) def default_user_appdir(target): @@ -4954,7 +4990,7 @@ index 77069ea..9838fc4 100644 return ".mozilla" diff --git a/toolkit/system/gnome/moz.build b/toolkit/system/gnome/moz.build -index aa2df2b..a42f897 100644 +index ce84646..1ebee31 100644 --- a/toolkit/system/gnome/moz.build +++ b/toolkit/system/gnome/moz.build @@ -7,8 +7,12 @@ @@ -5482,10 +5518,10 @@ index 9533f5e..973cf1c 100644 appearance: auto; -moz-default-appearance: menupopup; diff --git a/toolkit/toolkit.mozbuild b/toolkit/toolkit.mozbuild -index e8399d2..f76e321 100644 +index 0ab59fb..29d5f2d 100644 --- a/toolkit/toolkit.mozbuild +++ b/toolkit/toolkit.mozbuild -@@ -148,6 +148,7 @@ if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": +@@ -149,6 +149,7 @@ if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": DIRS += [ "/media/mozva", "/toolkit/system/gnome", @@ -5494,7 +5530,7 @@ index e8399d2..f76e321 100644 if CONFIG["ENABLE_WEBDRIVER"]: diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp -index 5156191..519c209 100644 +index b83637c..c19eaf8 100644 --- a/toolkit/xre/nsAppRunner.cpp +++ b/toolkit/xre/nsAppRunner.cpp @@ -346,14 +346,16 @@ MOZ_CONSTINIT nsString gProcessStartupShortcut; @@ -5534,7 +5570,7 @@ index 5156191..519c209 100644 } #else bool IsWaylandEnabled() { return false; } -@@ -3817,7 +3823,7 @@ class XREMain { +@@ -3803,7 +3809,7 @@ class XREMain { #endif }; @@ -5543,7 +5579,7 @@ index 5156191..519c209 100644 static SmprintfPointer FormatUid(uid_t aId) { if (const auto pw = getpwuid(aId)) { return mozilla::Smprintf("%s", pw->pw_name); -@@ -3866,7 +3872,7 @@ static bool CheckForUserMismatch() { +@@ -3852,7 +3858,7 @@ static bool CheckForUserMismatch() { } return false; } @@ -5552,7 +5588,7 @@ index 5156191..519c209 100644 static bool CheckForUserMismatch() { return false; } #endif -@@ -4849,7 +4855,7 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) { +@@ -4835,7 +4841,7 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) { // display_name is owned by gdk. display_name = gdk_get_display_arg_name(); bool waylandEnabled = IsWaylandEnabled(); @@ -5561,7 +5597,7 @@ index 5156191..519c209 100644 if (!display_name) { auto* proxyEnv = getenv("MOZ_DISABLE_WAYLAND_PROXY"); bool disableWaylandProxy = proxyEnv && *proxyEnv; -@@ -4904,7 +4910,7 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) { +@@ -4890,7 +4896,7 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) { } else { gdk_display_manager_open_display(gdk_display_manager_get(), nullptr); } @@ -5570,7 +5606,7 @@ index 5156191..519c209 100644 // We want to use proxy for main connection only so // restore original Wayland display for next potential Wayland connections // from gfx probe code and so on. -@@ -6202,7 +6208,9 @@ int XREMain::XRE_main(int argc, char* argv[], const BootstrapConfig& aConfig) { +@@ -6188,7 +6194,9 @@ int XREMain::XRE_main(int argc, char* argv[], const BootstrapConfig& aConfig) { if (!gfxPlatform::IsHeadless()) { # ifdef MOZ_WAYLAND WaylandDisplayRelease(); @@ -5581,24 +5617,35 @@ index 5156191..519c209 100644 } #endif diff --git a/toolkit/xre/nsEmbedFunctions.cpp b/toolkit/xre/nsEmbedFunctions.cpp -index 9217d2b..cb984de 100644 +index c822fe2..24750f7 100644 --- a/toolkit/xre/nsEmbedFunctions.cpp +++ b/toolkit/xre/nsEmbedFunctions.cpp -@@ -357,12 +357,12 @@ nsresult XRE_InitChildProcess(int aArgc, char* aArgv[], - crashHelperPid = geckoargs::sCrashHelperPid.Get(aArgc, aArgv); - MOZ_ASSERT(crashHelperPid.isSome()); - #endif // defined(XP_LINUX) && !defined(MOZ_WIDGET_ANDROID) -- +@@ -348,6 +348,7 @@ nsresult XRE_InitChildProcess(int aArgc, char* aArgv[], + + SetupErrorHandling(aArgv[0]); + +#ifndef XP_HAIKU - exceptionHandlerIsSet = CrashReporter::SetRemoteExceptionHandler( - std::move(*crashReporterArg), crashHelperPid); - MOZ_ASSERT(exceptionHandlerIsSet, - "Should have been able to set remote exception handler"); -- + bool exceptionHandlerIsSet = false; + if (!CrashReporter::IsDummy()) { + auto crashReporterArg = geckoargs::sCrashReporter.Get(aArgc, aArgv); +@@ -370,6 +371,7 @@ nsresult XRE_InitChildProcess(int aArgc, char* aArgv[], + CrashReporter::UnregisterRuntimeExceptionModule(); + } + } +#endif - if (!exceptionHandlerIsSet) { - // Bug 684322 will add better visibility into this condition - NS_WARNING("Could not setup crash reporting\n"); + + #ifdef MOZ_X11 + XInitThreads(); +@@ -601,7 +603,9 @@ nsresult XRE_InitChildProcess(int aArgc, char* aArgv[], + } + } + ++#ifndef XP_HAIKU + CrashReporter::UnsetRemoteExceptionHandler(exceptionHandlerIsSet); ++#endif + + return XRE_DeinitCommandLine(); + } diff --git a/toolkit/xre/nsSigHandlers.cpp b/toolkit/xre/nsSigHandlers.cpp index 146a586..10b7fb6 100644 --- a/toolkit/xre/nsSigHandlers.cpp @@ -5624,10 +5671,10 @@ index 146a586..10b7fb6 100644 "(%s) %s Proxy: %s", mozilla::widget::GetDesktopEnvironmentIdentifier().get(), diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp -index 9c94cb8..ee3e523 100644 +index 8a353b0..06e7601 100644 --- a/toolkit/xre/nsXREDirProvider.cpp +++ b/toolkit/xre/nsXREDirProvider.cpp -@@ -80,6 +80,10 @@ +@@ -81,6 +81,10 @@ #ifdef XP_IOS # include "UIKitDirProvider.h" #endif @@ -5638,7 +5685,7 @@ index 9c94cb8..ee3e523 100644 #if defined(XP_MACOSX) # define APP_REGISTRY_NAME "Application Registry" -@@ -365,7 +369,7 @@ nsXREDirProvider::GetFile(const char* aProperty, bool* aPersistent, +@@ -366,7 +370,7 @@ nsXREDirProvider::GetFile(const char* aProperty, bool* aPersistent, } else if (!strcmp(aProperty, XRE_USER_NATIVE_MANIFESTS)) { rv = GetUserDataDirectoryHome(getter_AddRefs(file), false); NS_ENSURE_SUCCESS(rv, rv); @@ -5647,7 +5694,7 @@ index 9c94cb8..ee3e523 100644 rv = file->AppendNative("Mozilla"_ns); # else // defined(XP_MACOSX) rv = file->AppendNative(".mozilla"_ns); -@@ -1081,6 +1085,12 @@ nsresult nsXREDirProvider::GetUserDataDirectoryHome(nsIFile** aFile, +@@ -1082,6 +1086,12 @@ nsresult nsXREDirProvider::GetUserDataDirectoryHome(nsIFile** aFile, NS_ENSURE_SUCCESS(rv, rv); MOZ_TRY(NS_NewLocalFile(path, getter_AddRefs(localDir))); @@ -5660,7 +5707,7 @@ index 9c94cb8..ee3e523 100644 #elif defined(XP_UNIX) const char* homeDir = getenv("HOME"); if (!homeDir || !*homeDir) return NS_ERROR_FAILURE; -@@ -1190,7 +1200,7 @@ nsresult nsXREDirProvider::AppendSysUserExtensionPath(nsIFile* aFile) { +@@ -1201,7 +1211,7 @@ nsresult nsXREDirProvider::AppendSysUserExtensionPath(nsIFile* aFile) { nsresult rv; @@ -5669,7 +5716,7 @@ index 9c94cb8..ee3e523 100644 static const char* const sXR = "Mozilla"; rv = aFile->AppendNative(nsDependentCString(sXR)); -@@ -1249,7 +1259,7 @@ nsresult nsXREDirProvider::AppendProfilePath(nsIFile* aFile, bool aLocal) { +@@ -1260,7 +1270,7 @@ nsresult nsXREDirProvider::AppendProfilePath(nsIFile* aFile, bool aLocal) { } NS_ENSURE_SUCCESS(rv, rv); @@ -5699,7 +5746,7 @@ index 4c53061..76d3561 100644 # else diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build -index 99882b6..d048aba 100644 +index c6cc98e..2b77f07 100644 --- a/widget/gtk/moz.build +++ b/widget/gtk/moz.build @@ -27,7 +27,9 @@ if CONFIG["COMPILE_ENVIRONMENT"]: @@ -5714,21 +5761,21 @@ index 99882b6..d048aba 100644 if CONFIG["MOZ_ENABLE_VAAPI"]: DIRS += ["vaapitest"] diff --git a/widget/gtk/nsWaylandDisplay.cpp b/widget/gtk/nsWaylandDisplay.cpp -index d05dd41..fae45e8 100644 +index 745711a..f42806b 100644 --- a/widget/gtk/nsWaylandDisplay.cpp +++ b/widget/gtk/nsWaylandDisplay.cpp -@@ -21,7 +21,9 @@ - #include "mozilla/widget/xx-pip-v1-client-protocol.h" - #include "nsGtkKeyUtils.h" +@@ -23,7 +23,9 @@ + #include "nsGtkUtils.h" + #include "nsLayoutUtils.h" #include "nsWindow.h" -#include "wayland-proxy.h" +#ifndef XP_HAIKU +# include "wayland-proxy.h" +#endif /* !XP_HAIKU */ - namespace mozilla::widget { - -@@ -253,6 +255,7 @@ static const struct moz_wl_pointer_listener pointer_listener = { + #undef LOG + #undef LOG_VERBOSE +@@ -272,6 +274,7 @@ static const struct moz_wl_pointer_listener pointer_listener = { }; void nsWaylandDisplay::SetPointer(wl_pointer* aPointer) { @@ -5736,7 +5783,7 @@ index d05dd41..fae45e8 100644 // Don't even try on such old interface if (wl_proxy_get_version((struct wl_proxy*)aPointer) < WL_POINTER_RELEASE_SINCE_VERSION) { -@@ -277,6 +280,7 @@ void nsWaylandDisplay::SetPointer(wl_pointer* aPointer) { +@@ -296,6 +299,7 @@ void nsWaylandDisplay::SetPointer(wl_pointer* aPointer) { zwp_pointer_gesture_hold_v1_add_listener(mPointerGestureHold, &gesture_hold_listener, this); } @@ -5744,7 +5791,7 @@ index d05dd41..fae45e8 100644 } void nsWaylandDisplay::RemovePointer() { -@@ -674,19 +678,22 @@ static void WlLogHandler(const char* format, va_list args) { +@@ -768,19 +772,22 @@ static void WlLogHandler(const char* format, va_list args) { if (strstr(error, "still attached")) { return; } @@ -5866,5 +5913,5 @@ index dbd9993..1431340 100644 # include # include -- -2.48.1 +2.50.1 diff --git a/www-client/iceweasel/patches/iceweasel_launcher-141.0.patchset b/www-client/iceweasel/patches/iceweasel_launcher-143.0.patchset similarity index 100% rename from www-client/iceweasel/patches/iceweasel_launcher-141.0.patchset rename to www-client/iceweasel/patches/iceweasel_launcher-143.0.patchset