From 39bb25cd6f56802e2165860bfb74d1cc7df74096 Mon Sep 17 00:00:00 2001 From: Martin Stransky Date: Mon, 5 Jun 2023 13:32:25 +0200 Subject: [PATCH] Updated to 114.0 --- .gitignore | 2 + D177258.diff | 181 --------------------------------------- D177902.diff | 32 ------- D178251.diff | 104 ---------------------- build-aarch64-skia.patch | 54 ++++-------- firefox.spec | 34 ++------ mozilla-1670333.patch | 68 --------------- mozilla-1775202.patch | 14 --- mozilla-1832770.patch | 16 ---- mozilla-build-arm.patch | 14 --- sources | 4 +- 11 files changed, 30 insertions(+), 493 deletions(-) delete mode 100644 D177258.diff delete mode 100644 D177902.diff delete mode 100644 D178251.diff delete mode 100644 mozilla-1670333.patch delete mode 100644 mozilla-1775202.patch delete mode 100644 mozilla-1832770.patch delete mode 100644 mozilla-build-arm.patch diff --git a/.gitignore b/.gitignore index d6f4a01..214ebb8 100644 --- a/.gitignore +++ b/.gitignore @@ -575,3 +575,5 @@ firefox-3.6.4.source.tar.bz2 /firefox-113.0.source.tar.xz /firefox-langpacks-113.0.1-20230515.tar.xz /firefox-113.0.1.source.tar.xz +/firefox-114.0.source.tar.xz +/firefox-langpacks-114.0-20230605.tar.xz diff --git a/D177258.diff b/D177258.diff deleted file mode 100644 index 0317a9d..0000000 --- a/D177258.diff +++ /dev/null @@ -1,181 +0,0 @@ -diff --git a/layout/reftests/xul/reftest.list b/layout/reftests/xul/reftest.list ---- a/layout/reftests/xul/reftest.list -+++ b/layout/reftests/xul/reftest.list -@@ -70,10 +70,12 @@ - skip == chrome://reftest/content/xul/treecell-image-svg-1b.xhtml chrome://reftest/content/xul/treecell-image-svg-1-ref.xhtml # bug 1218954 - - != chrome://reftest/content/xul/treetwisty-svg-context-paint-1-not-ref.xhtml chrome://reftest/content/xul/treetwisty-svg-context-paint-1-ref.xhtml - test-pref(svg.context-properties.content.enabled,true) fuzzy(0-26,0-2) == chrome://reftest/content/xul/treetwisty-svg-context-paint-1.xhtml chrome://reftest/content/xul/treetwisty-svg-context-paint-1-ref.xhtml - -+== chrome://reftest/content/xul/tree-scrollbar-height-change.xhtml chrome://reftest/content/xul/tree-scrollbar-height-change-ref.xhtml -+ - # resizer (non-native-themed) - - != chrome://reftest/content/xul/resizer-bottomend.xhtml chrome://reftest/content/xul/blank-window.xhtml - == chrome://reftest/content/xul/resizer-bottomend.xhtml chrome://reftest/content/xul/resizer-bottomright.xhtml - != chrome://reftest/content/xul/resizer-bottomend.xhtml chrome://reftest/content/xul/resizer-bottomend-rtl.xhtml -diff --git a/layout/reftests/xul/tree-scrollbar-height-change-ref.xhtml b/layout/reftests/xul/tree-scrollbar-height-change-ref.xhtml -new file mode 100644 ---- /dev/null -+++ b/layout/reftests/xul/tree-scrollbar-height-change-ref.xhtml -@@ -0,0 +1,32 @@ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -diff --git a/layout/reftests/xul/tree-scrollbar-height-change.xhtml b/layout/reftests/xul/tree-scrollbar-height-change.xhtml -new file mode 100644 ---- /dev/null -+++ b/layout/reftests/xul/tree-scrollbar-height-change.xhtml -@@ -0,0 +1,39 @@ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -diff --git a/layout/xul/tree/nsTreeBodyFrame.h b/layout/xul/tree/nsTreeBodyFrame.h ---- a/layout/xul/tree/nsTreeBodyFrame.h -+++ b/layout/xul/tree/nsTreeBodyFrame.h -@@ -114,11 +114,11 @@ - nsresult ClearStyleAndImageCaches(); - void RemoveImageCacheEntry(int32_t aRowIndex, nsTreeColumn* aCol); - - void CancelImageRequests(); - -- void ManageReflowCallback(const nsRect& aRect, nscoord aHorzWidth); -+ void ManageReflowCallback(); - - void DidReflow(nsPresContext*, const ReflowInput*) override; - - // nsIReflowCallback - bool ReflowFinished() override; -@@ -566,10 +566,13 @@ - nscoord mHorzWidth; - // The amount by which to adjust the width of the last cell. - // This depends on whether or not the columnpicker and scrollbars are present. - nscoord mAdjustWidth; - -+ // Our last reflowed rect, used for invalidation, see ManageReflowCallback(). -+ Maybe mLastReflowRect; -+ - // Cached heights and indent info. - nsRect mInnerBox; // 4-byte aligned - int32_t mRowHeight; - int32_t mIndentation; - -diff --git a/layout/xul/tree/nsTreeBodyFrame.cpp b/layout/xul/tree/nsTreeBodyFrame.cpp ---- a/layout/xul/tree/nsTreeBodyFrame.cpp -+++ b/layout/xul/tree/nsTreeBodyFrame.cpp -@@ -363,34 +363,37 @@ - // XXX is this optimal if we haven't laid out yet? - ScrollToRow(rowIndex); - NS_ENSURE_TRUE_VOID(weakFrame.IsAlive()); - } - --void nsTreeBodyFrame::ManageReflowCallback(const nsRect& aRect, -- nscoord aHorzWidth) { -- if (!mReflowCallbackPosted && -- (!aRect.IsEqualEdges(mRect) || mHorzWidth != aHorzWidth)) { -- PresShell()->PostReflowCallback(this); -- mReflowCallbackPosted = true; -- mOriginalHorzWidth = mHorzWidth; -- } else if (mReflowCallbackPosted && mHorzWidth != aHorzWidth && -- mOriginalHorzWidth == aHorzWidth) { -+void nsTreeBodyFrame::ManageReflowCallback() { -+ const nscoord horzWidth = CalcHorzWidth(GetScrollParts()); -+ if (!mReflowCallbackPosted) { -+ if (!mLastReflowRect || !mLastReflowRect->IsEqualEdges(mRect) || -+ mHorzWidth != horzWidth) { -+ PresShell()->PostReflowCallback(this); -+ mReflowCallbackPosted = true; -+ mOriginalHorzWidth = mHorzWidth; -+ } -+ } else if (mHorzWidth != horzWidth && mOriginalHorzWidth == horzWidth) { -+ // FIXME(emilio): This doesn't seem sound to me, if the rect changes in the -+ // block axis. - PresShell()->CancelReflowCallback(this); - mReflowCallbackPosted = false; - mOriginalHorzWidth = -1; - } -+ mLastReflowRect = Some(mRect); -+ mHorzWidth = horzWidth; - } - - nscoord nsTreeBodyFrame::GetIntrinsicBSize() { - return mHasFixedRowCount ? mRowHeight * mPageLength : 0; - } - - void nsTreeBodyFrame::DidReflow(nsPresContext* aPresContext, - const ReflowInput* aReflowInput) { -- nscoord horzWidth = CalcHorzWidth(GetScrollParts()); -- ManageReflowCallback(GetRect(), horzWidth); -- mHorzWidth = horzWidth; -+ ManageReflowCallback(); - SimpleXULLeafFrame::DidReflow(aPresContext, aReflowInput); - } - - bool nsTreeBodyFrame::ReflowFinished() { - if (!mView) { - diff --git a/D177902.diff b/D177902.diff deleted file mode 100644 index 04a8f6f..0000000 --- a/D177902.diff +++ /dev/null @@ -1,32 +0,0 @@ -diff --git a/devtools/server/actors/resources/console-messages.js b/devtools/server/actors/resources/console-messages.js ---- a/devtools/server/actors/resources/console-messages.js -+++ b/devtools/server/actors/resources/console-messages.js -@@ -64,16 +64,23 @@ - // that process (window and window-less). - // To do that we pass a null window and ConsoleAPIListener will catch everything. - // And also ignore WebExtension as we will filter out only by addonId, which is - // passed via consoleAPIListenerOptions. WebExtension may have multiple windows/documents - // but all of them will be flagged with the same addon ID. -- const window = -+ const messagesShouldMatchWindow = - targetActor.targetType === Targets.TYPES.FRAME && - targetActor.typeName != "parentProcessTarget" && -- targetActor.typeName != "webExtensionTarget" -- ? targetActor.window -- : null; -+ targetActor.typeName != "webExtensionTarget"; -+ const window = messagesShouldMatchWindow ? targetActor.window : null; -+ -+ // If we should match messages for a given window but for some reason, targetActor.window -+ // did not return a window, bail out. Otherwise we wouldn't have anything to match against -+ // and would consume all the messages, which could lead to issue (e.g. infinite loop, -+ // see Bug 1828026). -+ if (messagesShouldMatchWindow && !window) { -+ return; -+ } - - const listener = new ConsoleAPIListener(window, onConsoleAPICall, { - excludeMessagesBoundToWindow: isTargetActorContentProcess, - matchExactWindow: targetActor.ignoreSubFrames, - ...(targetActor.consoleAPIListenerOptions || {}), - diff --git a/D178251.diff b/D178251.diff deleted file mode 100644 index 249f9e5..0000000 --- a/D178251.diff +++ /dev/null @@ -1,104 +0,0 @@ -diff -up firefox-113.0.1/Cargo.lock.D178251 firefox-113.0.1/Cargo.lock ---- firefox-113.0.1/Cargo.lock.D178251 2023-05-12 00:09:22.000000000 +0200 -+++ firefox-113.0.1/Cargo.lock 2023-05-24 10:55:51.177278597 +0200 -@@ -417,8 +417,6 @@ dependencies = [ - [[package]] - name = "bindgen" - version = "0.64.0" --source = "registry+https://github.com/rust-lang/crates.io-index" --checksum = "c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4" - dependencies = [ - "bitflags 1.3.2", - "cexpr", -diff -up firefox-113.0.1/Cargo.toml.D178251 firefox-113.0.1/Cargo.toml ---- firefox-113.0.1/Cargo.toml.D178251 2023-05-12 00:09:22.000000000 +0200 -+++ firefox-113.0.1/Cargo.toml 2023-05-24 10:56:39.836959570 +0200 -@@ -119,7 +119,7 @@ tinyvec = { path = "build/rust/tinyvec" - wasi = { path = "build/rust/wasi" } - - # Patch bindgen 0.63 to 0.64 --bindgen = { path = "build/rust/bindgen" } -+bindgen_0_63 = { package = "bindgen", path = "build/rust/bindgen" } - - # Patch memoffset 0.6 to 0.8 - memoffset = { path = "build/rust/memoffset" } -@@ -145,6 +145,9 @@ web-sys = { path = "build/rust/dummy-web - # Overrides to allow easier use of common internal crates. - moz_asserts = { path = "mozglue/static/rust/moz_asserts" } - -+# Patch bindgen to work around issues with some unsound transmutes when compiling with LLVM 16+. -+bindgen = { path = "third_party/rust/bindgen" } -+ - # Patch `rure` to disable building the cdylib and staticlib targets - # Cargo has no way to disable building targets your dependencies provide which - # you don't depend on, and linking the cdylib breaks during instrumentation -diff -up firefox-113.0.1/supply-chain/config.toml.D178251 firefox-113.0.1/supply-chain/config.toml ---- firefox-113.0.1/supply-chain/config.toml.D178251 2023-05-12 00:09:23.000000000 +0200 -+++ firefox-113.0.1/supply-chain/config.toml 2023-05-24 10:55:51.178278632 +0200 -@@ -23,6 +23,10 @@ url = "https://raw.githubusercontent.com - audit-as-crates-io = true - notes = "This is the upstream code plus a few local fixes, see bug 1685697." - -+[policy."bindgen:0.64.0"] -+audit-as-crates-io = true -+notes = "This is a local override of the bindgen crate from crates.io, with a small local patch." -+ - [policy.chardetng] - audit-as-crates-io = true - notes = "This is a crate Henri wrote which is also published. We should probably update Firefox to tip and certify that." -diff -up firefox-113.0.1/third_party/rust/bindgen/codegen/mod.rs.D178251 firefox-113.0.1/third_party/rust/bindgen/codegen/mod.rs ---- firefox-113.0.1/third_party/rust/bindgen/codegen/mod.rs.D178251 2023-05-11 23:42:49.000000000 +0200 -+++ firefox-113.0.1/third_party/rust/bindgen/codegen/mod.rs 2023-05-24 10:55:51.178278632 +0200 -@@ -141,12 +141,13 @@ fn derives_of_item( - item: &Item, - ctx: &BindgenContext, - packed: bool, -+ forward_decl: bool, - ) -> DerivableTraits { - let mut derivable_traits = DerivableTraits::empty(); - - let all_template_params = item.all_template_params(ctx); - -- if item.can_derive_copy(ctx) && !item.annotations().disallow_copy() { -+ if item.can_derive_copy(ctx) && !item.annotations().disallow_copy() && !forward_decl { - derivable_traits |= DerivableTraits::COPY; - - if ctx.options().rust_features().builtin_clone_impls || -@@ -991,7 +992,7 @@ impl CodeGenerator for Type { - vec![attributes::repr("transparent")]; - let packed = false; // Types can't be packed in Rust. - let derivable_traits = -- derives_of_item(item, ctx, packed); -+ derives_of_item(item, ctx, packed, false); - if !derivable_traits.is_empty() { - let derives: Vec<_> = derivable_traits.into(); - attributes.push(attributes::derives(&derives)) -@@ -2032,8 +2033,9 @@ impl CodeGenerator for CompInfo { - } - - if forward_decl { -+ let prefix = ctx.trait_prefix(); - fields.push(quote! { -- _unused: [u8; 0], -+ _unused: ::#prefix::cell::UnsafeCell<[u8; 0]>, - }); - } - -@@ -2095,7 +2097,7 @@ impl CodeGenerator for CompInfo { - } - } - -- let derivable_traits = derives_of_item(item, ctx, packed); -+ let derivable_traits = derives_of_item(item, ctx, packed, self.is_forward_declaration()); - if !derivable_traits.contains(DerivableTraits::DEBUG) { - needs_debug_impl = ctx.options().derive_debug && - ctx.options().impl_debug && -@@ -3127,7 +3129,7 @@ impl CodeGenerator for Enum { - - if !variation.is_const() { - let packed = false; // Enums can't be packed in Rust. -- let mut derives = derives_of_item(item, ctx, packed); -+ let mut derives = derives_of_item(item, ctx, packed, false); - // For backwards compat, enums always derive - // Clone/Eq/PartialEq/Hash, even if we don't generate those by - // default. diff --git a/build-aarch64-skia.patch b/build-aarch64-skia.patch index a63e3e8..342836f 100644 --- a/build-aarch64-skia.patch +++ b/build-aarch64-skia.patch @@ -1,40 +1,7 @@ -diff -up firefox-72.0/gfx/skia/skia/include/private/SkHalf.h.aarch64-skia firefox-72.0/gfx/skia/skia/include/private/SkHalf.h ---- firefox-72.0/gfx/skia/skia/include/private/SkHalf.h.aarch64-skia 2020-01-02 22:33:02.000000000 +0100 -+++ firefox-72.0/gfx/skia/skia/include/private/SkHalf.h 2020-01-03 09:00:37.537296105 +0100 -@@ -40,7 +40,7 @@ static inline Sk4h SkFloatToHalf_finite_ - - static inline Sk4f SkHalfToFloat_finite_ftz(uint64_t rgba) { - Sk4h hs = Sk4h::Load(&rgba); --#if !defined(SKNX_NO_SIMD) && defined(SK_CPU_ARM64) -+#if 0 // !defined(SKNX_NO_SIMD) && defined(SK_CPU_ARM64) - float32x4_t fs; - asm ("fcvtl %[fs].4s, %[hs].4h \n" // vcvt_f32_f16(...) - : [fs] "=w" (fs) // =w: write-only NEON register -@@ -62,7 +62,7 @@ static inline Sk4f SkHalfToFloat_finite_ - } - - static inline Sk4h SkFloatToHalf_finite_ftz(const Sk4f& fs) { --#if !defined(SKNX_NO_SIMD) && defined(SK_CPU_ARM64) -+#if 0 // !defined(SKNX_NO_SIMD) && defined(SK_CPU_ARM64) - float32x4_t vec = fs.fVec; - asm ("fcvtn %[vec].4h, %[vec].4s \n" // vcvt_f16_f32(vec) - : [vec] "+w" (vec)); // +w: read-write NEON register -diff -up firefox-72.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h.aarch64-skia firefox-72.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h ---- firefox-72.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h.aarch64-skia 2020-01-03 09:00:37.538296107 +0100 -+++ firefox-72.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h 2020-01-03 10:11:41.259219508 +0100 -@@ -1087,7 +1087,7 @@ SI F from_half(U16 h) { - } - - SI U16 to_half(F f) { --#if defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) \ -+#if 0 //defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) \ - && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds. - return vcvt_f16_f32(f); - -diff -up firefox-72.0/gfx/skia/skia/third_party/skcms/src/Transform_inl.h.aarch64-skia firefox-72.0/gfx/skia/skia/third_party/skcms/src/Transform_inl.h ---- firefox-72.0/gfx/skia/skia/third_party/skcms/src/Transform_inl.h.aarch64-skia 2020-01-03 09:00:37.538296107 +0100 -+++ firefox-72.0/gfx/skia/skia/third_party/skcms/src/Transform_inl.h 2020-01-03 10:11:53.513250979 +0100 -@@ -183,8 +183,6 @@ SI F F_from_Half(U16 half) { +diff -up firefox-114.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h.aarch64-skia firefox-114.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h +--- firefox-114.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h.aarch64-skia 2023-06-02 03:15:22.000000000 +0200 ++++ firefox-114.0/gfx/skia/skia/modules/skcms/src/Transform_inl.h 2023-06-05 10:18:46.942777997 +0200 +@@ -189,8 +189,6 @@ SI F F_from_Half(U16 half) { SI U16 Half_from_F(F f) { #if defined(USING_NEON_FP16) return bit_pun(f); @@ -43,3 +10,16 @@ diff -up firefox-72.0/gfx/skia/skia/third_party/skcms/src/Transform_inl.h.aarch6 #elif defined(USING_AVX512F) return (U16)_mm512_cvtps_ph((__m512 )f, _MM_FROUND_CUR_DIRECTION ); #elif defined(USING_AVX_F16C) +diff -up firefox-114.0/gfx/skia/skia/src/base/SkHalf.h.aarch64-skia firefox-114.0/gfx/skia/skia/src/base/SkHalf.h +diff -up firefox-114.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h.aarch64-skia firefox-114.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h +--- firefox-114.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h.aarch64-skia 2023-06-05 10:18:46.941777963 +0200 ++++ firefox-114.0/gfx/skia/skia/src/opts/SkRasterPipeline_opts.h 2023-06-05 10:20:44.924843847 +0200 +@@ -1128,7 +1128,7 @@ SI F from_half(U16 h) { + } + + SI U16 to_half(F f) { +-#if defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) \ ++#if 0 //defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) \ + && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds. + return sk_bit_cast(vcvt_f16_f32(f)); + diff --git a/firefox.spec b/firefox.spec index ed2a8e2..24c5380 100644 --- a/firefox.spec +++ b/firefox.spec @@ -175,13 +175,13 @@ ExcludeArch: i686 Summary: Mozilla Firefox Web browser Name: firefox -Version: 113.0.1 -Release: 4%{?pre_tag}%{?dist} +Version: 114.0 +Release: 1%{?pre_tag}%{?dist} URL: https://www.mozilla.org/firefox/ License: MPLv1.1 or GPLv2+ or LGPLv2+ Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz %if %{with langpacks} -Source1: firefox-langpacks-%{version}%{?pre_version}-20230515.tar.xz +Source1: firefox-langpacks-%{version}%{?pre_version}-20230605.tar.xz %endif Source2: cbindgen-vendor.tar.xz Source10: firefox-mozconfig @@ -212,7 +212,7 @@ Source44: print-error-reftest Source45: run-wayland-compositor # Build patches -Patch3: mozilla-build-arm.patch +#Patch3: mozilla-build-arm.patch Patch32: build-rust-ppc64le.patch Patch35: build-ppc-jit.patch # Fixing missing cacheFlush when JS_CODEGEN_NONE is used (s390x) @@ -250,23 +250,11 @@ Patch230: firefox-enable-vaapi.patch # Upstream patches Patch402: mozilla-1196777.patch Patch407: mozilla-1667096.patch -Patch408: mozilla-1832770.patch -# TODO: do we need it? -#Patch415: mozilla-1670333.patch -Patch410: D177258.diff -Patch411: D177902.diff -Patch412: D178251.diff # PGO/LTO patches Patch600: pgo.patch Patch602: mozilla-1516803.patch -# a patch for compiling with gcc on arm (from debian) -Patch990: work-around-GCC-ICE-on-arm.patch - -# Work around broken moz.build file on ppc64le (mozb#1779545, mozb#1775202) -Patch1100: mozilla-1775202.patch - # tentative patch for RUSTFLAGS parsing issue: # https://bugzilla.redhat.com/show_bug.cgi?id=2184743 # https://bugzilla.mozilla.org/show_bug.cgi?id=1474486 @@ -506,7 +494,6 @@ This package contains results of tests executed during build. # ignored during this compare. %patch40 -p1 -b .aarch64-skia -%patch3 -p1 -b .arm %patch44 -p1 -b .build-arm-libopus %patch47 -p1 -b .fedora-shebang %patch49 -p1 -b .build-arm-libaom @@ -534,12 +521,6 @@ This package contains results of tests executed during build. %patch402 -p1 -b .1196777 %patch407 -p1 -b .1667096 -%patch408 -p1 -b .1832770 -# TODO: do we need it? -#%patch415 -p1 -b .1670333 -%patch410 -p1 -b .D177258 -%patch411 -p1 -b .D177902 -%patch412 -p1 -b .D178251 # PGO patches %if %{build_with_pgo} @@ -549,8 +530,6 @@ This package contains results of tests executed during build. %endif %endif -%patch990 -p1 -b .work-around-GCC-ICE-on-arm -%patch1100 -p1 -b .ppc-mobzuild %patch1200 -p1 -b .rustflags-commasplit rm -f .mozconfig @@ -1027,6 +1006,8 @@ fi %{_bindir}/firefox %{mozappdir}/firefox %{mozappdir}/firefox-bin +%{mozappdir}/glxtest +%{mozappdir}/vaapitest %doc %{_mandir}/man1/* %dir %{_sysconfdir}/%{name} %dir %{_sysconfdir}/%{name}/* @@ -1090,6 +1071,9 @@ fi #--------------------------------------------------------------------- %changelog +* Mon Jun 05 2023 Martin Stransky - 114.0-1 +- Updated to 114.0 + * Wed May 24 2023 Martin Stransky - 113.0.1-4 - Added patches from 113.0.2 - Added Rust fix for Rawhide (mzbz#1831242). diff --git a/mozilla-1670333.patch b/mozilla-1670333.patch deleted file mode 100644 index a1eaa9a..0000000 --- a/mozilla-1670333.patch +++ /dev/null @@ -1,68 +0,0 @@ -diff -up firefox-105.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-105.0/dom/media/mp4/MP4Demuxer.cpp ---- firefox-105.0/dom/media/mp4/MP4Demuxer.cpp.1670333 2022-09-15 20:49:09.000000000 +0200 -+++ firefox-105.0/dom/media/mp4/MP4Demuxer.cpp 2022-09-20 09:16:35.404519249 +0200 -@@ -31,6 +31,8 @@ mozilla::LogModule* GetDemuxerLog() { re - DDMOZ_LOG(gMediaDemuxerLog, mozilla::LogLevel::Debug, "::%s: " arg, \ - __func__, ##__VA_ARGS__) - -+extern bool gUseKeyframeFromContainer; -+ - namespace mozilla { - - DDLoggedTypeDeclNameAndBase(MP4TrackDemuxer, MediaTrackDemuxer); -@@ -394,6 +396,12 @@ already_AddRefed MP4TrackD - [[fallthrough]]; - case H264::FrameType::OTHER: { - bool keyframe = type == H264::FrameType::I_FRAME; -+ if (gUseKeyframeFromContainer) { -+ if (sample->mKeyframe && sample->mKeyframe != keyframe) { -+ sample->mKeyframe = keyframe; -+ } -+ break; -+ } - if (sample->mKeyframe != keyframe) { - NS_WARNING(nsPrintfCString("Frame incorrectly marked as %skeyframe " - "@ pts:%" PRId64 " dur:%" PRId64 -diff -up firefox-105.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-105.0/dom/media/platforms/PDMFactory.cpp ---- firefox-105.0/dom/media/platforms/PDMFactory.cpp.1670333 2022-09-15 20:49:09.000000000 +0200 -+++ firefox-105.0/dom/media/platforms/PDMFactory.cpp 2022-09-20 09:20:05.369572900 +0200 -@@ -61,6 +61,8 @@ - - #include - -+bool gUseKeyframeFromContainer = false; -+ - using DecodeSupport = mozilla::media::DecodeSupport; - using DecodeSupportSet = mozilla::media::DecodeSupportSet; - using MediaCodec = mozilla::media::MediaCodec; -@@ -553,7 +555,7 @@ void PDMFactory::CreateRddPDMs() { - #ifdef MOZ_FFMPEG - if (StaticPrefs::media_ffmpeg_enabled() && - StaticPrefs::media_rdd_ffmpeg_enabled() && -- !CreateAndStartupPDM()) { -+ !(mFFmpegUsed = CreateAndStartupPDM())) { - mFailureFlags += GetFailureFlagBasedOnFFmpegStatus( - FFmpegRuntimeLinker::LinkStatusCode()); - } -@@ -653,8 +655,9 @@ void PDMFactory::CreateContentPDMs() { - - CreateAndStartupPDM(); - -- if (StaticPrefs::media_gmp_decoder_enabled() && -+ if (StaticPrefs::media_gmp_decoder_enabled() && !mFFmpegUsed && - !CreateAndStartupPDM()) { -+ gUseKeyframeFromContainer = true; - mFailureFlags += DecoderDoctorDiagnostics::Flags::GMPPDMFailedToStartup; - } - } -diff -up firefox-105.0/dom/media/platforms/PDMFactory.h.1670333 firefox-105.0/dom/media/platforms/PDMFactory.h ---- firefox-105.0/dom/media/platforms/PDMFactory.h.1670333 2022-09-15 20:49:08.000000000 +0200 -+++ firefox-105.0/dom/media/platforms/PDMFactory.h 2022-09-20 09:16:35.404519249 +0200 -@@ -102,6 +102,7 @@ class PDMFactory final { - RefPtr mNullPDM; - - DecoderDoctorDiagnostics::FlagsSet mFailureFlags; -+ bool mFFmpegUsed = false; - - friend class RemoteVideoDecoderParent; - static void EnsureInit(); diff --git a/mozilla-1775202.patch b/mozilla-1775202.patch deleted file mode 100644 index e237f4c..0000000 --- a/mozilla-1775202.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up firefox-109.0/third_party/libwebrtc/moz.build.ppc-mobzuild firefox-109.0/third_party/libwebrtc/moz.build ---- firefox-109.0/third_party/libwebrtc/moz.build.ppc-mobzuild 2023-01-12 21:02:15.000000000 +0100 -+++ firefox-109.0/third_party/libwebrtc/moz.build 2023-01-16 13:30:28.404450100 +0100 -@@ -621,7 +621,9 @@ if CONFIG["CPU_ARCH"] == "ppc64" and CON - "/third_party/libwebrtc/api/audio_codecs/isac/audio_decoder_isac_float_gn", - "/third_party/libwebrtc/api/audio_codecs/isac/audio_encoder_isac_float_gn", - "/third_party/libwebrtc/modules/audio_coding/isac_c_gn", -- "/third_party/libwebrtc/modules/audio_coding/isac_gn" -+ "/third_party/libwebrtc/modules/audio_coding/isac_gn", -+ "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn", -+ "/third_party/libwebrtc/modules/desktop_capture/primitives_gn" - ] - - if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux": diff --git a/mozilla-1832770.patch b/mozilla-1832770.patch deleted file mode 100644 index 68a2c56..0000000 --- a/mozilla-1832770.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc b/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc ---- a/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc -+++ b/third_party/libwebrtc/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc -@@ -434,11 +434,11 @@ - { - PipeWireThreadLoopLock thread_loop_lock(pw_main_loop_); - - if (fd >= 0) { - pw_core_ = pw_context_connect_fd( -- pw_context_, fcntl(fd, F_DUPFD_CLOEXEC), nullptr, 0); -+ pw_context_, fcntl(fd, F_DUPFD_CLOEXEC, 0), nullptr, 0); - } else { - pw_core_ = pw_context_connect(pw_context_, nullptr, 0); - } - - if (!pw_core_) { diff --git a/mozilla-build-arm.patch b/mozilla-build-arm.patch deleted file mode 100644 index e390a28..0000000 --- a/mozilla-build-arm.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up firefox-52.0/gfx/skia/skia/include/core/SkPreConfig.h.arm firefox-52.0/gfx/skia/skia/include/core/SkPreConfig.h ---- firefox-52.0/gfx/skia/skia/include/core/SkPreConfig.h.arm 2017-03-03 13:53:52.480754536 +0100 -+++ firefox-52.0/gfx/skia/skia/include/core/SkPreConfig.h 2017-03-03 13:56:01.476018102 +0100 -@@ -203,6 +203,10 @@ - #define SK_ARM_HAS_CRC32 - #endif - -+#if defined(__aarch64__) -+ #undef SK_ARM_HAS_NEON -+#endif -+ - ////////////////////////////////////////////////////////////////////// - - #if !defined(SKIA_IMPLEMENTATION) diff --git a/sources b/sources index ba60730..91cb74c 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ SHA512 (cbindgen-vendor.tar.xz) = 0d45c1decfd7aaee853748745c9f5a907c0c6a0cf809c2387aac1cdcf680b0844b1ef4d05148e0527de4ff6e4d4666110bea317bd00b7d73a1210eb58a815563 SHA512 (mochitest-python.tar.gz) = e0a2c569dafe013b6a4c073516388549a8f398d8aa4538a3bc69dcda44737a3a3cf070285e9fa040a15d7a62446665c6158d42a1b6dc3e8d7f4680bc2ef17a16 -SHA512 (firefox-langpacks-113.0.1-20230515.tar.xz) = 93ddbcd8c0a98d4ddce356824a3aa305a6c110bd736912d5144253847aa91de80c5e6135f68e79e9c2aea8417225c57bd6328f7c7504accfddaf72fda57881d6 -SHA512 (firefox-113.0.1.source.tar.xz) = 67d6b777d138ef55dd813a15a483d0588181f3b83ba8da52bf6c1f10a58ab1d907a80afcfc1aa90b65405852b50d083f05032b32d3fdb153317f2df7f1f15db3 +SHA512 (firefox-114.0.source.tar.xz) = c6929d34583f25119738d1c817a24fd358fcada1f0ba5c14bab07c2acd35f18a012f23d054bfe8c6b12c0dda7bd3abdc7a305a36c7a4d36542885abeea3aafec +SHA512 (firefox-langpacks-114.0-20230605.tar.xz) = bb5d61264d5b8c55010da4c7d8884cb9c96ddb75fefef41eff7c81d8784ac46fe79d7f99936f3197a2bfbf0a062e4be494c6f17245c8d4cd9634f92611f7212e