head 1.2; access; symbols; locks; strict; comment @# @; 1.2 date 2026.07.16.15.18.46; author ryoon; state Exp; branches; next 1.1; commitid t22buBmROxUMjTNG; 1.1 date 2026.07.16.13.11.49; author ryoon; state Exp; branches; next ; commitid 6CAumMEOFWOdCSNG; desc @@ 1.2 log @www/firefox: Try to fix builds under both of NetBSD/{i386,amd64} @ text @$NetBSD: patch-third__party_rust_mtu_src_bindings_netbsd.rs,v 1.1 2026/07/16 13:11:49 ryoon Exp $ * Fix build under NetBSD/i386 10. --- third_party/rust/mtu/src/bindings/netbsd.rs.orig 2026-07-06 16:26:59.000000000 +0000 +++ third_party/rust/mtu/src/bindings/netbsd.rs @@@@ -5,8 +5,8 @@@@ pub const RTM_GET: u32 = 4; pub const RTA_DST: u32 = 1; pub const RTA_IFP: u32 = 16; pub const RTAX_MAX: u32 = 9; -pub type __int32_t = ::std::os::raw::c_int; -pub type __int64_t = ::std::os::raw::c_long; +pub type __int32_t = i32; +pub type __int64_t = i64; pub type __pid_t = __int32_t; pub type u_char = ::std::os::raw::c_uchar; pub type u_short = ::std::os::raw::c_ushort; @@@@ -19,8 +19,14 @@@@ pub struct timespec { } #[allow(clippy::unnecessary_operation, clippy::identity_op)] const _: () = { + #[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ["Size of timespec"][::std::mem::size_of::() - 16usize]; + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "64")))] + ["Size of timespec"][::std::mem::size_of::() - 12usize]; + #[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ["Alignment of timespec"][::std::mem::align_of::() - 8usize]; + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "64")))] + ["Alignment of timespec"][::std::mem::align_of::() - 4usize]; ["Offset of field: timespec::tv_sec"][::std::mem::offset_of!(timespec, tv_sec) - 0usize]; ["Offset of field: timespec::tv_nsec"][::std::mem::offset_of!(timespec, tv_nsec) - 8usize]; }; @@@@ -50,8 +56,14 @@@@ pub struct if_data { } #[allow(clippy::unnecessary_operation, clippy::identity_op)] const _: () = { + #[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ["Size of if_data"][::std::mem::size_of::() - 136usize]; + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "64")))] + ["Size of if_data"][::std::mem::size_of::() - 132usize]; + #[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ["Alignment of if_data"][::std::mem::align_of::() - 8usize]; + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "64")))] + ["Alignment of if_data"][::std::mem::align_of::() - 4usize]; ["Offset of field: if_data::ifi_type"][::std::mem::offset_of!(if_data, ifi_type) - 0usize]; ["Offset of field: if_data::ifi_addrlen"] [::std::mem::offset_of!(if_data, ifi_addrlen) - 1usize]; @@@@ -102,7 +114,10 @@@@ pub struct rt_metrics { #[allow(clippy::unnecessary_operation, clippy::identity_op)] const _: () = { ["Size of rt_metrics"][::std::mem::size_of::() - 80usize]; + #[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ["Alignment of rt_metrics"][::std::mem::align_of::() - 8usize]; + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "64")))] + ["Alignment of rt_metrics"][::std::mem::align_of::() - 4usize]; ["Offset of field: rt_metrics::rmx_locks"] [::std::mem::offset_of!(rt_metrics, rmx_locks) - 0usize]; ["Offset of field: rt_metrics::rmx_mtu"][::std::mem::offset_of!(rt_metrics, rmx_mtu) - 8usize]; @@@@ -143,7 +158,10 @@@@ pub struct rt_msghdr { #[allow(clippy::unnecessary_operation, clippy::identity_op)] const _: () = { ["Size of rt_msghdr"][::std::mem::size_of::() - 120usize]; + #[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ["Alignment of rt_msghdr"][::std::mem::align_of::() - 8usize]; + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "64")))] + ["Alignment of rt_msghdr"][::std::mem::align_of::() - 4usize]; ["Offset of field: rt_msghdr::rtm_msglen"] [::std::mem::offset_of!(rt_msghdr, rtm_msglen) - 0usize]; ["Offset of field: rt_msghdr::rtm_version"] @ 1.1 log @www/firefox: Update to 152.0.6 * WebGL does not work. webgl.out-of-process workaround was removed. Disable WebGL by default. Cnangelog: 152.0.6: New * Smart Window includes several enhancements: Fixed * Fixed an issue that prevented email tracking protection from being disabled in the redesigned Firefox Settings. (Bug 2049331) * Fixed a hang that could occur after using a file picker dialog on macOS 26. (Bug 2053177) * Fixed the homepage not loading for some enterprise configurations that set it using a legacy autoconfig format. (Bug 2047962) * Various security fixes. Security fixes: Mozilla Foundation Security Advisory 2026-67 #CVE-2026-15718: Invalid pointer in the JavaScript: WebAssembly component #CVE-2026-15719: Site isolation in the DOM: Navigation component 152.0.5: Fixed * Fixed the Manage payment methods list in Settings appearing empty when a saved payment card had no expiration date. (Bug 2048383) 152.0.4: New * Smart Window includes several enhancements: + You can now ask it to close your tabs, with a confirmation step when needed and the option to undo afterward. (Bug 2040769) + Browsing history results now appear with images. (Bug 2038069) + When you give feedback on a response, you can now choose from common reasons and preview exactly what will be shared before submitting. (Bug 2033002) Fixed * Fixed copy, paste, undo, redo, and similar keyboard shortcuts not working inside macOS system dialogs such as the Save and Open panels. (Bug 2040851, Bug 2040844) * Fixed the Manage Cookies and Site Data dialog opening with an empty list when opened from the Settings search results. (Bug 2041077) * Fixed keyboard focus landing in the wrong place after following an in-page link, so pressing Tab continues from the link's position as expected. (Bug 2049307) * Various security fixes. Security fixes: Mozilla Foundation Security Advisory 2026-62 #CVE-2026-14241: Memory safety bugs fixed in Firefox 152.0.4 152.0.3: Fixed * Fixed an issue that could cause extreme memory usage and freezing on startup for users with language packs installed. (Bug 2049845) 152.0.2: Fixed * Fixed some Settings section headings showing placeholder text instead of the translated name in certain languages. (Bug 2047983) * Fixed New Tab content not matching the browser's display language after it was changed. (Bug 2046945) * Fixed a regression that could break playback of some MP4 video files. (Bug 2047467) * Fixed a performance regression that could slow down sites performing many encryption and decryption operations at once, such as Proton Drive. (Bug 2046401) 152.0.1: Fixed * Fixed frequent crashes affecting users with Intel Raptor Lake processors. ( Bug 2039575) * Fixed an issue on macOS where choosing a PDF option, such as "Save as PDF", from the system print dialog would send the job to your printer instead of saving a file. (Bug 2047850) 152.0: New * Firefox Settings features a brand-new look with streamlined organization, clearer groupings, and improved navigation for easier customization. * In Private Browsing windows, you can now temporarily disable tracker blocking for a tab if it's causing a site to break. When you reload a page where trackers were blocked, Firefox shows a message offering to reload without the stricter protections. All other tracking protections stay active. * You can now mute your browser from the address bar: type "mute" (or "shush" or "sssh") and use the address bar quick action to silence every tab currently playing sound across all Firefox windows. * Improved support for more advanced cursor movement commands, including those relating to paragraph boundaries, on macOS. * On Windows and Linux, you can now copy links via the tab context menu by right-clicking a tab and selecting Share > Copy Link, making it easy to copy a link without switching to the tab first. When multiple tabs are selected, you can copy all selected links at once. Windows users still retain access to Microsoft sharing options from the Share menu. * A "Send tab" toolbar button is now available which can be added via More Tools > Customize Toolbar. * The following languages are now available for Translations: + Basque + Galician * Firefox builds in Croatian, English (UK), Georgian, Persian, Slovenian, Tajik, Tamil, Tibetan, Turkish, Welsh, and Xhosa now come with a built-in dictionary for the Firefox spellchecker. Firefox Labs * Firefox now offers experimental support for the new JPEG XL image format, which generally provides better compression than WebP, JPEG, PNG, and GIF and is designed to supersede them. You can enable it from the Firefox Labs panel in Settings. Fixed * Fixed an issue where the Paste option could be missing from context menus when editing content on sites such as Squarespace, LinkedIn, and eBay. * Improved dragging images from Firefox to the desktop or Finder on macOS ?? images now save reliably and land where you drop them. * In multiple monitor situations, the About Firefox window now more reliably opens on the display with the most recently used Firefox window. * Fixed arrow-key text navigation and word selection commands that moved in the wrong direction in right-to-left text on macOS and Linux. * Various security fixes. Security fixes: Mozilla Foundation Security Advisory 2026-57 #CVE-2026-12289: Privilege escalation in the Graphics: WebRender component #CVE-2026-12290: Memory safety bug fixed in Firefox 152 #CVE-2026-12291: Use-after-free in the Networking: HTTP component #CVE-2026-12292: Incorrect boundary conditions in the Web Audio component #CVE-2026-12293: Use-after-free in the Graphics: WebGPU component #CVE-2026-12294: Sandbox escape in the DOM: Workers component #CVE-2026-12295: Sandbox escape in the DOM: Navigation component #CVE-2026-12296: Sandbox escape in the Security: Process Sandboxing component #CVE-2026-12297: Sandbox escape due to incorrect boundary conditions in the Networking component #CVE-2026-12298: Memory safety bug fixed in Firefox 152 #CVE-2026-12299: JIT miscompilation in the DOM: Core & HTML component #CVE-2026-12300: Memory safety bug fixed in Firefox 152 #CVE-2026-12301: Memory safety bug fixed in Firefox 152 #CVE-2026-12302: Mitigation bypass in the DOM: Security component #CVE-2026-12303: Information disclosure due to incorrect boundary conditions in the Graphics: WebGPU component #CVE-2026-12304: Same-origin policy bypass in the Networking: Cookies component #CVE-2026-12305: Memory safety bug fixed in Firefox 152 #CVE-2026-12306: Memory safety bug fixed in Firefox 152 #CVE-2026-12307: Memory safety bug fixed in Firefox 152 #CVE-2026-12308: Memory safety bug fixed in Firefox 152 #CVE-2026-12309: Memory safety bug fixed in Firefox 152 #CVE-2026-12310: Memory safety bug fixed in Firefox 152 #CVE-2026-12311: Information disclosure, sandbox escape in the Security: Process Sandboxing component #CVE-2026-12312: Memory safety bug fixed in Firefox 152 #CVE-2026-12313: Information disclosure, sandbox escape in the Security: Process Sandboxing component #CVE-2026-12314: Memory safety bug fixed in Firefox 152 #CVE-2026-12315: Mitigation bypass in the DOM: Security component #CVE-2026-12316: Mitigation bypass in the DOM: Security component #CVE-2026-12317: Memory safety bug fixed in Firefox 152 #CVE-2026-12318: Incorrect boundary conditions in the Libraries component in NSS #CVE-2026-12319: Denial-of-service in the Audio/Video: Playback component #CVE-2026-12320: Information disclosure in the Password Manager component #CVE-2026-12321: JIT miscompilation in the JavaScript: WebAssembly component #CVE-2026-12322: Clickjacking issue in the Widget: Gtk component #CVE-2026-12323: Spoofing issue in the DOM: Core & HTML component #CVE-2026-12324: Incorrect boundary conditions in the Graphics: CanvasWebGL component #CVE-2026-12325: Denial-of-service in the Graphics: ImageLib component #CVE-2026-12326: Memory safety bugs fixed in Firefox 152 and Thunderbird 152 @ text @d1 1 a1 1 $NetBSD$ d22 1 a22 1 + #[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))] d24 1 a24 1 + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "32")))] d26 1 a26 1 + #[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))] d28 1 a28 1 + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "32")))] d37 1 a37 1 + #[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))] d39 1 a39 1 + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "32")))] d41 1 a41 1 + #[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))] d43 1 a43 1 + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "32")))] d52 1 a52 1 + #[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))] d54 1 a54 1 + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "32")))] d63 1 a63 1 + #[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))] d65 1 a65 1 + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "32")))] @