diff options
Diffstat (limited to 'mail/thunderbird')
-rw-r--r-- | mail/thunderbird/Makefile | 4 | ||||
-rw-r--r-- | mail/thunderbird/distinfo | 6 | ||||
-rw-r--r-- | mail/thunderbird/files/patch-bug1876632 | 35 |
3 files changed, 40 insertions, 5 deletions
diff --git a/mail/thunderbird/Makefile b/mail/thunderbird/Makefile index b8baea55f37d..2ebe069477a3 100644 --- a/mail/thunderbird/Makefile +++ b/mail/thunderbird/Makefile @@ -1,9 +1,9 @@ PORTNAME= thunderbird DISTVERSION= 141.0 -PORTREVISION= 1 +PORTREVISION= 3 CATEGORIES= mail news net-im wayland MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}${DISTVERSIONSUFFIX}/source \ - MOZILLA/${PORTNAME}/candidates/${DISTVERSION}${DISTVERSIONSUFFIX}-candidates/build2/source + MOZILLA/${PORTNAME}/candidates/${DISTVERSION}${DISTVERSIONSUFFIX}-candidates/build3/source DISTFILES= ${DISTNAME}.source${EXTRACT_SUFX} MAINTAINER= gecko@FreeBSD.org diff --git a/mail/thunderbird/distinfo b/mail/thunderbird/distinfo index b7c39d931b73..f673398ef994 100644 --- a/mail/thunderbird/distinfo +++ b/mail/thunderbird/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752928378 -SHA256 (thunderbird-141.0.source.tar.xz) = be3e00918650ba060761f55791e82df944d68f8d84e3eaea4c1cb92733bbd13c -SIZE (thunderbird-141.0.source.tar.xz) = 760085448 +TIMESTAMP = 1753116075 +SHA256 (thunderbird-141.0.source.tar.xz) = 694a6b11f8afa9ff2b0899f1f59473160b3a92be271892df8c2f6bb748fb4666 +SIZE (thunderbird-141.0.source.tar.xz) = 756973792 diff --git a/mail/thunderbird/files/patch-bug1876632 b/mail/thunderbird/files/patch-bug1876632 new file mode 100644 index 000000000000..3932b1deccc9 --- /dev/null +++ b/mail/thunderbird/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; + } |