diff options
Diffstat (limited to 'www/firefox-esr/files')
-rw-r--r-- | www/firefox-esr/files/patch-bug1876366 | 23 | ||||
-rw-r--r-- | www/firefox-esr/files/patch-bug1876632 | 35 |
2 files changed, 35 insertions, 23 deletions
diff --git a/www/firefox-esr/files/patch-bug1876366 b/www/firefox-esr/files/patch-bug1876366 deleted file mode 100644 index 78483c3fbab7..000000000000 --- a/www/firefox-esr/files/patch-bug1876366 +++ /dev/null @@ -1,23 +0,0 @@ -commit 46a89fb0319d673b3139a068e3d89aed9f44fc16 -Author: Christoph Moench-Tegeder <cmt@burggraben.net> - - use gdk legacy cursor interface by default - - Upstream https://bugzilla.mozilla.org/show_bug.cgi?id=1876366#c16 - hints that we could re-test this once we have GTK 3.24.42 (with the - now-current gtk3-3.24.41 the original problem is still reproducable, - but toggling this flag does fix it for me) - -diff --git modules/libpref/init/StaticPrefList.yaml modules/libpref/init/StaticPrefList.yaml -index 835450712a12..f2249006c36d 100644 ---- modules/libpref/init/StaticPrefList.yaml -+++ modules/libpref/init/StaticPrefList.yaml -@@ -16070,7 +16070,7 @@ - # Whether to use gtk legacy cursor API. - - name: widget.gtk.legacy-cursors.enabled - type: bool -- value: false -+ value: true - mirror: always - - # Whether to use gtk high contrast themes to disable content styling like on diff --git a/www/firefox-esr/files/patch-bug1876632 b/www/firefox-esr/files/patch-bug1876632 new file mode 100644 index 000000000000..3932b1deccc9 --- /dev/null +++ b/www/firefox-esr/files/patch-bug1876632 @@ -0,0 +1,35 @@ +commit 4f531ca86d24be5d4de673f6e652ed899151d20c +Author: Jesper Schmitz Mouridsen <jesper@schmitz.computer> +Date: Wed Jul 23 22:01:31 2025 +0000 + + Bug 1876632 Fix aslr allocations on FreeBSD r=spidermonkey-reviewers,sfink + + Without the alignment flag the desired address + gets randomized by aslr in a way which causes it to not + be aligned. Furthermore the TryToAlignChunk almost always + fails. With this fix it never gets to TryToAlignChunk + because the flag guarantees upfront alignment. + + Differential Revision: https://phabricator.services.mozilla.com/D257824 + +diff --git js/src/gc/Memory.cpp js/src/gc/Memory.cpp +index e790f1784ede..13639c9a6eb4 100644 +--- js/src/gc/Memory.cpp ++++ js/src/gc/Memory.cpp +@@ -608,7 +608,16 @@ static void* MapAlignedPagesRandom(size_t length, size_t alignment) { + for (size_t i = 1; i <= 1024; ++i) { + if (i & 0xf) { + uint64_t desired = alignment * GetNumberInRange(minNum, maxNum); ++# if defined(__FreeBSD__) && defined(__aarch64__) ++ int flags = MAP_PRIVATE | MAP_ANON | ++ MAP_ALIGNED(mozilla::CeilingLog2Size(alignment)); ++ region = MozTaggedAnonymousMmap((void*)(uintptr_t)desired, length, ++ int(PageAccess::ReadWrite), flags, -1, 0, ++ "js-gc-heap"); ++# else + region = MapMemoryAtFuzzy(reinterpret_cast<void*>(desired), length); ++ ++# endif + if (!region) { + continue; + } |