Commit Graph

7501 Commits

Author SHA1 Message Date
roytam1 67885784d2 Merge remote-tracking branch 'origin/tracking' into custom 2026-02-27 07:01:48 +08:00
Moonchild be0566f463 No issue - Fix build issue.
Unified build deprot on some targets causing issues with the recently
added `mozilla:KnownNotNull` without this header.
2026-02-27 07:01:21 +08:00
Moonchild 49e8159c0a [parser] Account for some corner-case structural document issues. 2026-02-27 07:01:03 +08:00
Moonchild 8bc63bffbc [MFBT] Reduce size() calls in subspan. 2026-02-27 07:00:21 +08:00
Moonchild bd7aecb37b [libjar] Throw when we know a file was truncated. 2026-02-27 06:58:40 +08:00
Brian Smith 21f5bacd70 Issue #2925 - Follow-up: Fix Mac Intel and PowerPC 10.5-10.11 builds. clock_gettime() is not available prior to 10.12, so use Mach's clock_get_time(). pthread_setname_np() is not available prior to MacOS 10.6, so guard that. libvpx does not support big endian, so only use VPX acceleration on ppc64le. 2026-02-27 06:58:15 +08:00
Job Bautista 73afe93840 Issue #2965 - Update libtheora to 1.2.0. 2026-02-27 06:58:00 +08:00
roytam1 a00f6d4336 Merge remote-tracking branch 'origin/tracking' into custom 2026-02-26 09:04:13 +08:00
Moonchild 2e1ea67336 [WebAudio] Gracefully handle mid-stream audio changes. 2026-02-26 09:03:50 +08:00
Moonchild 88c5c138bd [WebRTC] Ensure valid image size.
Extremely small encoded image sizes should be considered corrupt data.
Drive-by improvement: make sure to cast the encoded image data length
to uint32_t for use with `CreateEmptyFrame`
2026-02-26 09:03:26 +08:00
Moonchild 7bef52f38c [WASM] Make sure to assign module 2026-02-26 09:02:58 +08:00
Moonchild b7a01d4900 [WASM] Improve WasmModuleObject handling in WasmJS.cpp 2026-02-26 09:02:31 +08:00
Moonchild ce7568ee26 No issue - Modernize nsWindowWatcher
Get rid of old hacky conditional code and use weak references.
2026-02-26 09:02:01 +08:00
Moonchild 6aa3331bdb No issue - Don't assign non-live hash table entry.
The problem here is that we use move assignment on a hash table entry that
is not live. Although all entries are constructed by
`HashTable::createTable`, they may subsequently be destroyed by
`HashTableEntry::destroyStoredT()`.

Therefore it is not safe to call any methods on a non live entry.
This causes a problem for GC barrier wrappers which assume that the object
state is valid (and presumably anything that does more than just write the
assigned data into memory).

The fix is to construct a new entry in-place.

Based on work by Jon Coppeard <jcoppeard@mozilla.com> in Bug 2009608
2026-02-26 09:00:37 +08:00
Basilisk-Dev 3762b659ef Issue #2925 followup - Restore previous GlobalFree behavior from before SCTP upgrade in sctp_bsd_addr.c 2026-02-26 09:00:05 +08:00
roytam1 c43b4d7704 sctp: change back FREE(pAdapterAddrs) to GlobalFree(pAdapterAddrs) as pAdapterAddrs is not allocated with MALLOC() 2026-02-26 00:05:55 +08:00
roytam1 8864f23162 webrtc: disable VP9 flexibleMode usage 2026-02-25 10:27:04 +08:00
roytam1 3d4c07fc59 vpx: try to restore pre-vista code paths. 2026-02-25 09:40:41 +08:00
roytam1 de7873be5a Merge remote-tracking branch 'origin/tracking' into custom 2026-02-25 09:07:33 +08:00
Basilisk-Dev a818241ec2 Issue #2925 - Fix Windows x64 2026-02-25 09:07:10 +08:00
Basilisk-Dev 7fd68dfdf5 Issue #2925 - Work around x86 bug in libvpx 2026-02-25 09:06:56 +08:00
Basilisk-Dev d2e1911345 Issue #2925 - Upgrade libvpx to 1.16.0 2026-02-25 09:06:37 +08:00
Brad Werth dccd7b8d91 [gfx] Use gzip stream total_out for SVG document parsing.
With this change, the assert is no longer necessary, because the stream
tells us how many elements to process.
2026-02-25 09:05:49 +08:00
Andy 31c8f3a154 Optimize ClusterIterator::Next
This is based on BZ 1820504, which notes that running `GetEmojiPresentation()` before checking `prevWasZwj` adds load time to all text, as opposed to more efficiently making `prevWasZwj` the precursor to categorizing the character.
The original patch uses an enum for `baseIsEmojiStatus`; I figured I'd simplify things with numeric values (0 = unset, 1 = yes, 2 = no).
2026-02-25 09:05:10 +08:00
roytam1 4aeb7e36cd Merge remote-tracking branch 'origin/tracking' into custom 2026-02-24 09:17:34 +08:00
Moonchild 483762871c No issue - Fix cairo warnings
This fixes warning spew because warnings are thrown in case of mixed use
of cairo_status_t and cairo_int_status_t, which is a hack in cairo
because C99 doesn't support real enums (it's mapped to uint8 internally).
The "register" storage type is no longer a thing in C++17, which would
also warn; just letting the compiler decide is best, so just removing
the keyword is the proper solution in cairoint.h
2026-02-24 07:44:26 +08:00
Moonchild c9bdbd5603 Issue #2955 - Implement form.requestSubmit(element) 2026-02-24 07:41:10 +08:00
Basilisk-Dev b265d9495d Issue #2925 - Incorporate FreeBSD patch from dbsoft after usrsctp upgrade 2026-02-24 07:40:57 +08:00
Basilisk-Dev 467ae4e4c0 Issue #2925 - Upgrade usrsctp library to latest version 2026-02-24 07:40:37 +08:00
roytam1 3ce7d63ca4 Merge remote-tracking branch 'origin/tracking' into custom 2026-02-20 08:56:07 +08:00
Job Bautista 2d6ab30ad4 Issue #2949 - Part 2 Follow-up: Check if first frame has been decoded for software fallback.
Now that we can check if the first frame has been decoded thanks to Issue #2953
we should ensure that the first frame actually has not been decoded before
checking if the media errored out.
2026-02-20 08:55:40 +08:00
Job Bautista 2bee353427 Issue #2953 - Part 4: Don't attempt to skip to next keyframe if there are none.
Demuxers don't typically return an error when they don't have a future
keyframe, they return infinity.
2026-02-20 08:55:26 +08:00
Job Bautista 5491326ff9 Issue #2953 - Part 3: Assert that no error can occur while an internal seek is pending.
An internal seek occurs when we've reached a data gap, EOS or a previous error got skipped.

During this time, the decoder has been either flushed or shut down.
2026-02-20 08:55:08 +08:00
Job Bautista 69e5594d45 Issue #2953 - Part 2: Don't attempt to continue decoding if no next keyframe.
When we have no future keyframe and an error occurred, we can't skip over
anything and we shouldn't try to simply decode the next video frame; so we
abort early.
2026-02-20 08:54:51 +08:00
Job Bautista f18608e46d Issue #2953 - Part 1: Attempt to decode the first frame again if error occurred. 2026-02-20 08:54:36 +08:00
Job Bautista 26708f41b5 Issue #2949 - Part 4: Don't attempt to use WMF VP9 decoder for profiles 1 and 3.
The Windows VP9 hardware decoder currently does not support anything else than
profiles 0 and 2 (YUV420) and return garbage when decoding.

We error on those streams allowing to fall back on the ffvp9 software decoder.
2026-02-20 08:54:22 +08:00
Job Bautista 728953f2a3 Issue #2949 - Part 3: Add method to read a VP9 profile from a VP9 bitstream
We haven't moved BitReader out of stagefright yet (BZ 1417011), but the reader
there works.
2026-02-20 08:54:07 +08:00
Job Bautista e2d9147488 Issue #2949 - Part 2: When hardware decoding fails, fall back to software
Unlike the original patch we don't have the infrastructure provided by Mozilla
BZ 1363668 yet to determine if we've decoded the first frame. This is not
required for checking whether we've errored out on hardware decoding though.
2026-02-20 08:53:53 +08:00
Job Bautista 4c61d6eca0 Issue #2949 - Part 1: Add option to disable hardware decoding. 2026-02-20 08:53:39 +08:00
Brian Smith 54cca3d19a Issue #2697 & #2051 - Follow-up: Spot fix a JPEG-XL big endian issue. Rewrote the patch from the main branch because it requires newer Highway versions. Original patch needs Highway Endian and ARM64 MulOdd() Vec128<int32_t> support. 2026-02-20 08:53:24 +08:00
Brian Smith cd63b7bf63 Issue #2697 - Follow-up: Update libjxl to 0.11.2 for security updates. Fix tile dimension in low memory rendering pipeline. CVE-2025-12474 - https://www.cve.org/cverecord?id=CVE-2025-12474 Fix number of channels for gray-to-gray color transform. CVE-2026-1837 - https://www.cve.org/cverecord?id=CVE-2026-1837 And one security fix without a CVE. 2026-02-20 08:53:01 +08:00
roytam1 8e7fc6a945 Merge remote-tracking branch 'origin/tracking' into custom 2026-02-19 11:14:28 +08:00
Job Bautista 0ebf0f049d Issue #2946 - Enable WMF VP9 decoder by default. 2026-02-19 11:14:10 +08:00
Job Bautista b18f865d50 Issue #2946 - Override sample duration if unknown.
Based on Mozilla bug 1371290's part 2.

The VP9 decoder doesn't properly set the sample duration, leading to all
samples being marked as having a zero duration. The compositor drops those
frames incorrectly.
2026-02-19 11:12:30 +08:00
Andy 331aaa3be9 Add Manual Tibetan Line Breaking
https://bugzilla.mozilla.org/show_bug.cgi?id=1647377
and
https://bugzilla.mozilla.org/show_bug.cgi?id=1736393
2026-02-19 11:12:03 +08:00
Andy a280357a13 Add Special Lithuanian Casing
https://bugzilla.mozilla.org/show_bug.cgi?id=1322992
2026-02-19 11:11:51 +08:00
Andy d76b684b2d Update CLDR Plural Forms
Move Macedonian to 15 - https://bugzilla.mozilla.org/show_bug.cgi?id=1415906
Add Shuar (17) - https://bugzilla.mozilla.org/show_bug.cgi?id=1396724
Add Welsh (18) - https://bugzilla.mozilla.org/show_bug.cgi?id=1428366
Add Slavic (19) - https://bugzilla.mozilla.org/show_bug.cgi?id=1533435
2026-02-19 11:11:37 +08:00
Jazzzny 4a5a4216fa Issue #2051 - Follow-up: Reverse filter channel order on big-endian. 2026-02-19 11:11:12 +08:00
roytam1 d72f3921f8 Merge remote-tracking branch 'origin/tracking' into custom 2026-02-13 23:58:37 +08:00
Basilisk-Dev 113300ac3f Issue #2229 - Fix assertions in top-level await on x86_64 2026-02-13 23:58:18 +08:00