Version in base suite: 102.10.0esr-1~deb11u1 Version in overlay suite: 102.12.0esr-1~deb11u1 Base version: firefox-esr_102.12.0esr-1~deb11u1 Target version: firefox-esr_102.14.0esr-1~deb11u1 Base file: /srv/ftp-master.debian.org/ftp/pool/main/f/firefox-esr/firefox-esr_102.12.0esr-1~deb11u1.dsc Target file: /srv/ftp-master.debian.org/policy/pool/main/f/firefox-esr/firefox-esr_102.14.0esr-1~deb11u1.dsc /srv/release.debian.org/tmp/8hsMMH2DEH/firefox-esr-102.14.0esr/third_party/rust/md-5/tests/data/md5.blb |binary /srv/release.debian.org/tmp/8hsMMH2DEH/firefox-esr-102.14.0esr/third_party/rust/sha1/tests/data/sha1.blb |binary firefox-esr-102.14.0esr/CLOBBER | 2 firefox-esr-102.14.0esr/Cargo.lock | 45 firefox-esr-102.14.0esr/Cargo.toml | 7 firefox-esr-102.14.0esr/browser/config/version.txt | 2 firefox-esr-102.14.0esr/browser/config/version_display.txt | 2 firefox-esr-102.14.0esr/config/milestone.txt | 2 firefox-esr-102.14.0esr/debian/changelog | 22 firefox-esr-102.14.0esr/debian/control | 4 firefox-esr-102.14.0esr/debian/l10n/browser-l10n.control | 2 firefox-esr-102.14.0esr/debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch | 4 firefox-esr-102.14.0esr/debian/patches/debian-hacks/Work-around-https-sourceware.org-bugzilla-show_bug.c.patch | 24 firefox-esr-102.14.0esr/debian/patches/prefs/Set-DPI-to-system-settings.patch | 2 firefox-esr-102.14.0esr/debian/patches/series | 1 firefox-esr-102.14.0esr/debian/rules | 8 firefox-esr-102.14.0esr/debian/upstream.mk | 4 firefox-esr-102.14.0esr/docs/writing-rust-code/xpcom.md | 2 firefox-esr-102.14.0esr/docshell/base/nsDocShell.cpp | 11 firefox-esr-102.14.0esr/dom/base/AttrArray.cpp | 20 firefox-esr-102.14.0esr/dom/base/Document.cpp | 33 firefox-esr-102.14.0esr/dom/base/Document.h | 32 firefox-esr-102.14.0esr/dom/base/Element.cpp | 2 firefox-esr-102.14.0esr/dom/base/LocationBase.cpp | 6 firefox-esr-102.14.0esr/dom/base/crashtests/1838484.html | 9 firefox-esr-102.14.0esr/dom/base/crashtests/crashtests.list | 1 firefox-esr-102.14.0esr/dom/base/nsContentUtils.cpp | 7 firefox-esr-102.14.0esr/dom/base/nsContentUtils.h | 2 firefox-esr-102.14.0esr/dom/base/nsNoDataProtocolContentPolicy.cpp | 6 firefox-esr-102.14.0esr/dom/base/test/browser.ini | 2 firefox-esr-102.14.0esr/dom/canvas/CanvasRenderingContext2D.cpp | 23 firefox-esr-102.14.0esr/dom/canvas/CanvasUtils.cpp | 72 firefox-esr-102.14.0esr/dom/canvas/CanvasUtils.h | 5 firefox-esr-102.14.0esr/dom/canvas/OffscreenCanvas.cpp | 68 firefox-esr-102.14.0esr/dom/canvas/OffscreenCanvas.h | 33 firefox-esr-102.14.0esr/dom/canvas/nsICanvasRenderingContextInternal.cpp | 6 firefox-esr-102.14.0esr/dom/html/HTMLCanvasElement.cpp | 20 firefox-esr-102.14.0esr/dom/html/HTMLCanvasElement.h | 2 firefox-esr-102.14.0esr/dom/html/test/browser.ini | 7 firefox-esr-102.14.0esr/dom/html/test/browser_fullscreen_exit_on_external_protocol.js | 160 firefox-esr-102.14.0esr/dom/ipc/BrowserParent.cpp | 140 firefox-esr-102.14.0esr/dom/ipc/ContentParent.cpp | 11 firefox-esr-102.14.0esr/dom/media/webrtc/RTCCertificate.cpp | 43 firefox-esr-102.14.0esr/dom/media/webrtc/transport/dtlsidentity.cpp | 29 firefox-esr-102.14.0esr/dom/quota/CipherStrategy.h | 2 firefox-esr-102.14.0esr/dom/quota/DecryptingInputStream_impl.h | 8 firefox-esr-102.14.0esr/dom/quota/DummyCipherStrategy.h | 4 firefox-esr-102.14.0esr/dom/quota/NSSCipherStrategy.cpp | 8 firefox-esr-102.14.0esr/dom/quota/NSSCipherStrategy.h | 3 firefox-esr-102.14.0esr/dom/script/ScriptLoader.cpp | 93 firefox-esr-102.14.0esr/dom/script/ScriptLoader.h | 6 firefox-esr-102.14.0esr/dom/webauthn/U2FSoftTokenManager.cpp | 31 firefox-esr-102.14.0esr/gfx/2d/DrawEventRecorder.h | 80 firefox-esr-102.14.0esr/gfx/2d/DrawTargetRecording.cpp | 22 firefox-esr-102.14.0esr/gfx/layers/CanvasDrawEventRecorder.cpp | 13 firefox-esr-102.14.0esr/gfx/layers/CanvasDrawEventRecorder.h | 2 firefox-esr-102.14.0esr/gfx/layers/ipc/CanvasChild.cpp | 31 firefox-esr-102.14.0esr/gfx/layers/ipc/VideoBridgeChild.cpp | 11 firefox-esr-102.14.0esr/gfx/layers/wr/WebRenderLayerManager.cpp | 12 firefox-esr-102.14.0esr/gfx/layers/wr/WebRenderLayerManager.h | 4 firefox-esr-102.14.0esr/image/imgLoader.cpp | 5 firefox-esr-102.14.0esr/image/imgRequest.cpp | 13 firefox-esr-102.14.0esr/intl/l10n/rust/fluent-ffi/src/bundle.rs | 2 firefox-esr-102.14.0esr/intl/l10n/rust/fluent-ffi/src/resource.rs | 2 firefox-esr-102.14.0esr/intl/l10n/rust/l10nregistry-ffi/src/registry.rs | 4 firefox-esr-102.14.0esr/intl/l10n/rust/l10nregistry-ffi/src/source.rs | 2 firefox-esr-102.14.0esr/js/loader/ModuleLoaderBase.cpp | 10 firefox-esr-102.14.0esr/js/src/build/moz.build | 1 firefox-esr-102.14.0esr/js/src/jit-test/tests/baseline/osr-large-stack-frame.js | 18 firefox-esr-102.14.0esr/js/src/jit/AliasAnalysis.cpp | 7 firefox-esr-102.14.0esr/js/src/jit/MIR.h | 6 firefox-esr-102.14.0esr/js/src/jit/MacroAssembler.cpp | 17 firefox-esr-102.14.0esr/js/src/proxy/CrossCompartmentWrapper.cpp | 2 firefox-esr-102.14.0esr/js/src/proxy/DeadObjectProxy.cpp | 31 firefox-esr-102.14.0esr/js/src/proxy/DeadObjectProxy.h | 8 firefox-esr-102.14.0esr/js/src/vm/Compartment.cpp | 3 firefox-esr-102.14.0esr/js/src/vm/JSObject.cpp | 28 firefox-esr-102.14.0esr/js/src/vm/JSObject.h | 2 firefox-esr-102.14.0esr/layout/painting/nsDisplayList.cpp | 6 firefox-esr-102.14.0esr/netwerk/cookie/CookieStorage.cpp | 11 firefox-esr-102.14.0esr/netwerk/cookie/CookieStorage.h | 2 firefox-esr-102.14.0esr/netwerk/dns/effective_tld_names.dat | 180 firefox-esr-102.14.0esr/parser/html/nsHtml5OwningUTF16Buffer.cpp | 22 firefox-esr-102.14.0esr/parser/html/nsHtml5OwningUTF16Buffer.h | 9 firefox-esr-102.14.0esr/parser/html/nsHtml5TreeOperation.cpp | 7 firefox-esr-102.14.0esr/security/manager/ssl/StaticHPKPins.h | 2 firefox-esr-102.14.0esr/security/manager/ssl/components.conf | 4 firefox-esr-102.14.0esr/security/manager/ssl/crypto_hash/Cargo.toml | 23 firefox-esr-102.14.0esr/security/manager/ssl/crypto_hash/crypto_hash.h | 46 firefox-esr-102.14.0esr/security/manager/ssl/crypto_hash/src/lib.rs | 176 firefox-esr-102.14.0esr/security/manager/ssl/ipcclientcerts/dynamic-library/moz.build | 1 firefox-esr-102.14.0esr/security/manager/ssl/moz.build | 1 firefox-esr-102.14.0esr/security/manager/ssl/nsCryptoHash.cpp | 177 firefox-esr-102.14.0esr/security/manager/ssl/nsCryptoHash.h | 38 firefox-esr-102.14.0esr/security/manager/ssl/nsICryptoHash.idl | 11 firefox-esr-102.14.0esr/security/manager/ssl/nsNSSModule.cpp | 2 firefox-esr-102.14.0esr/security/manager/ssl/nsSTSPreloadList.inc | 6059 +++++----- firefox-esr-102.14.0esr/security/manager/ssl/osclientcerts/dynamic-library/moz.build | 1 firefox-esr-102.14.0esr/services/common/app_services_logger/src/lib.rs | 4 firefox-esr-102.14.0esr/services/settings/dumps/blocklists/addons-bloomfilters.json | 295 firefox-esr-102.14.0esr/services/settings/dumps/main/devtools-compatibility-browsers.json | 414 firefox-esr-102.14.0esr/services/settings/dumps/main/search-config.json | 1040 - firefox-esr-102.14.0esr/services/settings/dumps/security-state/intermediates.json | 1082 - firefox-esr-102.14.0esr/services/settings/dumps/security-state/onecrl.json | 467 firefox-esr-102.14.0esr/sourcestamp.txt | 4 firefox-esr-102.14.0esr/taskcluster/ci/release-generate-checksums/kind.yml | 8 firefox-esr-102.14.0esr/taskcluster/ci/release-snap-repackage/kind.yml | 4 firefox-esr-102.14.0esr/testing/mozharness/mozharness/base/python.py | 4 firefox-esr-102.14.0esr/testing/mozharness/scripts/release/generate-checksums.py | 4 firefox-esr-102.14.0esr/third_party/rust/bindgen/src/clang.rs | 5 firefox-esr-102.14.0esr/third_party/rust/bindgen/src/ir/comp.rs | 3 firefox-esr-102.14.0esr/third_party/rust/bindgen/src/ir/ty.rs | 30 firefox-esr-102.14.0esr/third_party/rust/bindgen/src/ir/var.rs | 8 firefox-esr-102.14.0esr/third_party/rust/cssparser/src/cow_rc_str.rs | 48 firefox-esr-102.14.0esr/third_party/rust/digest/.cargo-checksum.json | 2 firefox-esr-102.14.0esr/third_party/rust/digest/CHANGELOG.md | 29 firefox-esr-102.14.0esr/third_party/rust/digest/Cargo.toml | 34 firefox-esr-102.14.0esr/third_party/rust/digest/README.md | 44 firefox-esr-102.14.0esr/third_party/rust/digest/src/core_api/ct_variable.rs | 61 firefox-esr-102.14.0esr/third_party/rust/digest/src/core_api/wrapper.rs | 13 firefox-esr-102.14.0esr/third_party/rust/digest/src/dev.rs | 2 firefox-esr-102.14.0esr/third_party/rust/digest/src/dev/rng.rs | 2 firefox-esr-102.14.0esr/third_party/rust/digest/src/digest.rs | 2 firefox-esr-102.14.0esr/third_party/rust/digest/src/lib.rs | 6 firefox-esr-102.14.0esr/third_party/rust/digest/src/mac.rs | 54 firefox-esr-102.14.0esr/third_party/rust/md-5/.cargo-checksum.json | 1 firefox-esr-102.14.0esr/third_party/rust/md-5/CHANGELOG.md | 84 firefox-esr-102.14.0esr/third_party/rust/md-5/Cargo.toml | 54 firefox-esr-102.14.0esr/third_party/rust/md-5/LICENSE-APACHE | 201 firefox-esr-102.14.0esr/third_party/rust/md-5/LICENSE-MIT | 27 firefox-esr-102.14.0esr/third_party/rust/md-5/README.md | 72 firefox-esr-102.14.0esr/third_party/rust/md-5/benches/mod.rs | 14 firefox-esr-102.14.0esr/third_party/rust/md-5/src/compress.rs | 165 firefox-esr-102.14.0esr/third_party/rust/md-5/src/lib.rs | 146 firefox-esr-102.14.0esr/third_party/rust/md-5/tests/mod.rs | 15 firefox-esr-102.14.0esr/third_party/rust/mp4parse/src/lib.rs | 9 firefox-esr-102.14.0esr/third_party/rust/sha1/.cargo-checksum.json | 1 firefox-esr-102.14.0esr/third_party/rust/sha1/CHANGELOG.md | 42 firefox-esr-102.14.0esr/third_party/rust/sha1/Cargo.toml | 52 firefox-esr-102.14.0esr/third_party/rust/sha1/LICENSE-APACHE | 201 firefox-esr-102.14.0esr/third_party/rust/sha1/LICENSE-MIT | 27 firefox-esr-102.14.0esr/third_party/rust/sha1/README.md | 65 firefox-esr-102.14.0esr/third_party/rust/sha1/benches/mod.rs | 14 firefox-esr-102.14.0esr/third_party/rust/sha1/src/compress.rs | 37 firefox-esr-102.14.0esr/third_party/rust/sha1/src/compress/aarch64.rs | 18 firefox-esr-102.14.0esr/third_party/rust/sha1/src/compress/soft.rs | 260 firefox-esr-102.14.0esr/third_party/rust/sha1/src/compress/x86.rs | 112 firefox-esr-102.14.0esr/third_party/rust/sha1/src/lib.rs | 154 firefox-esr-102.14.0esr/third_party/rust/sha1/tests/mod.rs | 15 firefox-esr-102.14.0esr/toolkit/components/glean/src/init/upload_pref.rs | 4 firefox-esr-102.14.0esr/toolkit/components/glean/src/init/user_activity.rs | 2 firefox-esr-102.14.0esr/toolkit/components/reputationservice/ApplicationReputation.cpp | 11 firefox-esr-102.14.0esr/toolkit/components/reputationservice/ApplicationReputation.h | 4 firefox-esr-102.14.0esr/toolkit/components/reputationservice/test/gtest/TestExecutableLists.cpp | 1 firefox-esr-102.14.0esr/toolkit/components/search/tests/xpcshell/searchconfigs/test_baidu.js | 2 firefox-esr-102.14.0esr/toolkit/components/search/tests/xpcshell/searchconfigs/test_distributions.js | 15 firefox-esr-102.14.0esr/toolkit/components/xulstore/src/ffi.rs | 2 firefox-esr-102.14.0esr/toolkit/library/rust/shared/Cargo.toml | 1 firefox-esr-102.14.0esr/toolkit/library/rust/shared/lib.rs | 1 firefox-esr-102.14.0esr/toolkit/modules/PopupNotifications.jsm | 2 firefox-esr-102.14.0esr/toolkit/mozapps/defaultagent/moz.build | 1 firefox-esr-102.14.0esr/widget/TextEvents.h | 15 firefox-esr-102.14.0esr/widget/gtk/GRefPtr.h | 1 firefox-esr-102.14.0esr/widget/gtk/IMContextWrapper.cpp | 20 firefox-esr-102.14.0esr/xpcom/idl-parser/xpidl/rust.py | 15 firefox-esr-102.14.0esr/xpcom/idl-parser/xpidl/xpidl.py | 80 firefox-esr-102.14.0esr/xpcom/io/nsLocalFileCommon.cpp | 2 firefox-esr-102.14.0esr/xpcom/io/nsLocalFileCommon.h | 2 firefox-esr-102.14.0esr/xpcom/rust/gtest/xpcom/test.rs | 4 169 files changed, 8686 insertions(+), 5106 deletions(-) diff -Nru firefox-esr-102.12.0esr/CLOBBER firefox-esr-102.14.0esr/CLOBBER --- firefox-esr-102.12.0esr/CLOBBER 2023-05-29 17:34:25.000000000 +0000 +++ firefox-esr-102.14.0esr/CLOBBER 2023-07-24 16:50:05.000000000 +0000 @@ -22,4 +22,4 @@ # changes to stick? As of bug 928195, this shouldn't be necessary! Please # don't change CLOBBER for WebIDL changes any more. -Merge day clobber 2023-05-08 \ No newline at end of file +Merge day clobber 2023-07-04 \ No newline at end of file diff -Nru firefox-esr-102.12.0esr/Cargo.lock firefox-esr-102.14.0esr/Cargo.lock --- firefox-esr-102.12.0esr/Cargo.lock 2023-05-29 17:34:26.000000000 +0000 +++ firefox-esr-102.14.0esr/Cargo.lock 2023-07-24 16:50:05.000000000 +0000 @@ -1080,10 +1080,23 @@ ] [[package]] +name = "crypto_hash" +version = "0.1.0" +dependencies = [ + "base64 0.10.1", + "digest", + "libc", + "md-5", + "nserror", + "nsstring", + "sha1", + "sha2", + "xpcom", +] + +[[package]] name = "cssparser" version = "0.29.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93d03419cb5950ccfd3daf3ff1c7a36ace64609a1a8746d493df1ca0afde0fa" dependencies = [ "cssparser-macros", "dtoa-short", @@ -1099,8 +1112,6 @@ [[package]] name = "cssparser-macros" version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e" dependencies = [ "quote", "syn", @@ -1331,9 +1342,9 @@ [[package]] name = "digest" -version = "0.10.3" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2fb860ca6fafa5552fb6d0e816a69c8e49f0908bf524e30a90d97c85892d506" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer", "crypto-common", @@ -2046,6 +2057,7 @@ "cert_storage", "chardetng_c", "cose-c", + "crypto_hash", "cubeb-coreaudio", "cubeb-pulse", "cubeb-sys", @@ -3062,6 +3074,15 @@ checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" [[package]] +name = "md-5" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca" +dependencies = [ + "digest", +] + +[[package]] name = "mdns_service" version = "0.1.0" dependencies = [ @@ -3407,7 +3428,6 @@ [[package]] name = "mp4parse" version = "0.13.0" -source = "git+https://github.com/mozilla/mp4parse-rust?rev=3bfc47d9a571d0842676043ba60716318e946c06#3bfc47d9a571d0842676043ba60716318e946c06" dependencies = [ "bitreader", "byteorder", @@ -4737,6 +4757,17 @@ dependencies = [ "cfg-if 1.0.0", "cpufeatures", + "digest", +] + +[[package]] +name = "sha1" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3" +dependencies = [ + "cfg-if 1.0.0", + "cpufeatures", "digest", ] diff -Nru firefox-esr-102.12.0esr/Cargo.toml firefox-esr-102.14.0esr/Cargo.toml --- firefox-esr-102.12.0esr/Cargo.toml 2023-05-29 17:34:26.000000000 +0000 +++ firefox-esr-102.14.0esr/Cargo.toml 2023-07-24 16:50:05.000000000 +0000 @@ -106,6 +106,10 @@ # Overrides to allow easier use of common internal crates. moz_asserts = { path = "mozglue/static/rust/moz_asserts" } +# cherry-pick of LLVM16 fixes. +cssparser = { path = "third_party/rust/cssparser" } +cssparser-macros = { path = "third_party/rust/cssparser-macros" } + # Patch bindgen to work around issues with some unsound transmutes when compiling with LLVM 16+. bindgen = { path = "third_party/rust/bindgen" } @@ -128,3 +132,6 @@ # Patch fallible_collections for issues with rustc 1.65. [patch.crates-io.fallible_collections] path = "third_party/rust/fallible_collections" + +[patch."https://github.com/mozilla/mp4parse-rust"] +mp4parse = { path = "third_party/rust/mp4parse" } diff -Nru firefox-esr-102.12.0esr/browser/config/version.txt firefox-esr-102.14.0esr/browser/config/version.txt --- firefox-esr-102.12.0esr/browser/config/version.txt 2023-05-29 17:34:26.000000000 +0000 +++ firefox-esr-102.14.0esr/browser/config/version.txt 2023-07-24 16:50:06.000000000 +0000 @@ -1 +1 @@ -102.12.0 +102.14.0 diff -Nru firefox-esr-102.12.0esr/browser/config/version_display.txt firefox-esr-102.14.0esr/browser/config/version_display.txt --- firefox-esr-102.12.0esr/browser/config/version_display.txt 2023-05-29 17:34:26.000000000 +0000 +++ firefox-esr-102.14.0esr/browser/config/version_display.txt 2023-07-24 16:50:06.000000000 +0000 @@ -1 +1 @@ -102.12.0esr +102.14.0esr diff -Nru firefox-esr-102.12.0esr/config/milestone.txt firefox-esr-102.14.0esr/config/milestone.txt --- firefox-esr-102.12.0esr/config/milestone.txt 2023-05-29 17:34:26.000000000 +0000 +++ firefox-esr-102.14.0esr/config/milestone.txt 2023-07-24 16:50:06.000000000 +0000 @@ -10,4 +10,4 @@ # hardcoded milestones in the tree from these two files. #-------------------------------------------------------- -102.12.0 +102.14.0 diff -Nru firefox-esr-102.12.0esr/debian/changelog firefox-esr-102.14.0esr/debian/changelog --- firefox-esr-102.12.0esr/debian/changelog 2023-06-06 20:34:19.000000000 +0000 +++ firefox-esr-102.14.0esr/debian/changelog 2023-08-01 20:59:08.000000000 +0000 @@ -1,3 +1,25 @@ +firefox-esr (102.14.0esr-1~deb11u1) bullseye-security; urgency=medium + + * New upstream release. + * Fixes for mfsa2023-30, also known as: + CVE-2023-4045, CVE-2023-4046, CVE-2023-4047, CVE-2023-4048, + CVE-2023-4049, CVE-2023-4050, CVE-2023-4055, CVE-2023-4056. + + -- Mike Hommey Wed, 02 Aug 2023 05:59:08 +0900 + +firefox-esr (102.13.0esr-1~deb11u1) bullseye-security; urgency=medium + + * New upstream release. + * Fixes for mfsa2023-23, also known as: + CVE-2023-37201, CVE-2023-37202, CVE-2023-37207, CVE-2023-37208, + CVE-2023-37211. + + * debian/rules, media/ffvpx/config_unix64.h: Work around + https://sourceware.org/bugzilla/show_bug.cgi?id=30578. + * debian/upstream.mk: Unstable is trixie. + + -- Mike Hommey Wed, 05 Jul 2023 05:33:32 +0900 + firefox-esr (102.12.0esr-1~deb11u1) bullseye-security; urgency=medium * New upstream release. diff -Nru firefox-esr-102.12.0esr/debian/control firefox-esr-102.14.0esr/debian/control --- firefox-esr-102.12.0esr/debian/control 2023-06-06 20:34:19.000000000 +0000 +++ firefox-esr-102.14.0esr/debian/control 2023-08-01 20:59:08.000000000 +0000 @@ -708,11 +708,11 @@ Section: localization Depends: ${misc:Depends}, firefox-esr (>= ${source:Version}), firefox-esr (<< ${source:Version}.1~) -Description: Central Khmer language package for Firefox ESR +Description: Khmer language package for Firefox ESR Firefox ESR is a powerful, extensible web browser with support for modern web application technologies. . - This package contains the localization of Firefox ESR in Central Khmer. + This package contains the localization of Firefox ESR in Khmer. Package: firefox-esr-l10n-kn Architecture: all diff -Nru firefox-esr-102.12.0esr/debian/l10n/browser-l10n.control firefox-esr-102.14.0esr/debian/l10n/browser-l10n.control --- firefox-esr-102.12.0esr/debian/l10n/browser-l10n.control 2023-06-06 20:34:19.000000000 +0000 +++ firefox-esr-102.14.0esr/debian/l10n/browser-l10n.control 2023-08-01 20:59:08.000000000 +0000 @@ -318,7 +318,7 @@ %include @PRODUCT@-l10n.control.in %define L10N_LANG km -%define L10N_LANGUAGE Central Khmer +%define L10N_LANGUAGE Khmer %undef L10N_RECOMMENDS %define L10N_TRANSITION 1 %include @PRODUCT@-l10n.control.in diff -Nru firefox-esr-102.12.0esr/debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch firefox-esr-102.14.0esr/debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch --- firefox-esr-102.12.0esr/debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch 2023-06-06 20:33:25.000000000 +0000 +++ firefox-esr-102.14.0esr/debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch 2023-08-01 20:56:24.000000000 +0000 @@ -7,10 +7,10 @@ 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js -index db545cd..71fb01f 100644 +index 6e0effe..5aa5b20 100644 --- a/modules/libpref/init/all.js +++ b/modules/libpref/init/all.js -@@ -3555,7 +3555,7 @@ pref("network.psl.onUpdate_notify", false); +@@ -3557,7 +3557,7 @@ pref("network.psl.onUpdate_notify", false); // All the Geolocation preferences are here. // diff -Nru firefox-esr-102.12.0esr/debian/patches/debian-hacks/Work-around-https-sourceware.org-bugzilla-show_bug.c.patch firefox-esr-102.14.0esr/debian/patches/debian-hacks/Work-around-https-sourceware.org-bugzilla-show_bug.c.patch --- firefox-esr-102.12.0esr/debian/patches/debian-hacks/Work-around-https-sourceware.org-bugzilla-show_bug.c.patch 1970-01-01 00:00:00.000000000 +0000 +++ firefox-esr-102.14.0esr/debian/patches/debian-hacks/Work-around-https-sourceware.org-bugzilla-show_bug.c.patch 2023-08-01 20:56:24.000000000 +0000 @@ -0,0 +1,24 @@ +From: Mike Hommey +Date: Wed, 5 Jul 2023 05:25:35 +0900 +Subject: Work around https://sourceware.org/bugzilla/show_bug.cgi?id=30578 + +--- + media/ffvpx/config_unix64.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/media/ffvpx/config_unix64.h b/media/ffvpx/config_unix64.h +index 728ede1..858f247 100644 +--- a/media/ffvpx/config_unix64.h ++++ b/media/ffvpx/config_unix64.h +@@ -193,7 +193,11 @@ + #define HAVE_SYNC_VAL_COMPARE_AND_SWAP 1 + #define HAVE_CABS 1 + #define HAVE_CEXP 1 ++#ifdef FFMPEG_DISABLE_INLINE_ASM ++#define HAVE_INLINE_ASM 0 ++#else + #define HAVE_INLINE_ASM 1 ++#endif + #define HAVE_SYMVER 1 + #define HAVE_X86ASM 1 + #define HAVE_BIGENDIAN 0 diff -Nru firefox-esr-102.12.0esr/debian/patches/prefs/Set-DPI-to-system-settings.patch firefox-esr-102.14.0esr/debian/patches/prefs/Set-DPI-to-system-settings.patch --- firefox-esr-102.12.0esr/debian/patches/prefs/Set-DPI-to-system-settings.patch 2023-06-06 20:33:25.000000000 +0000 +++ firefox-esr-102.14.0esr/debian/patches/prefs/Set-DPI-to-system-settings.patch 2023-08-01 20:56:24.000000000 +0000 @@ -7,7 +7,7 @@ 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/libpref/init/StaticPrefList.yaml b/modules/libpref/init/StaticPrefList.yaml -index 7c717a2..9138ac13 100644 +index 1fa48c3..23b89046 100644 --- a/modules/libpref/init/StaticPrefList.yaml +++ b/modules/libpref/init/StaticPrefList.yaml @@ -7351,7 +7351,7 @@ diff -Nru firefox-esr-102.12.0esr/debian/patches/series firefox-esr-102.14.0esr/debian/patches/series --- firefox-esr-102.12.0esr/debian/patches/series 2023-06-06 20:33:25.000000000 +0000 +++ firefox-esr-102.14.0esr/debian/patches/series 2023-08-01 20:56:24.000000000 +0000 @@ -23,3 +23,4 @@ debian-hacks/Allow-to-override-rust-LTO-flag.patch debian-hacks/Remove-workaround-for-old-libstdc-problem-which-now-.patch debian-hacks/Add-missing-webrtc-directory-for-ppc64el-bz-1775202.patch +debian-hacks/Work-around-https-sourceware.org-bugzilla-show_bug.c.patch diff -Nru firefox-esr-102.12.0esr/debian/rules firefox-esr-102.14.0esr/debian/rules --- firefox-esr-102.12.0esr/debian/rules 2023-06-06 20:33:25.000000000 +0000 +++ firefox-esr-102.14.0esr/debian/rules 2023-08-01 20:56:24.000000000 +0000 @@ -150,7 +150,13 @@ CONFIGURE_FLAGS += --disable-jit endif -CXXFLAGS = $(CFLAGS) +CXXFLAGS := $(CFLAGS) +# Work around https://sourceware.org/bugzilla/show_bug.cgi?id=30578 +ifneq (,$(filter trixie,$(DIST))) +ifneq (,$(filter amd64,$(DEB_HOST_ARCH))) +CFLAGS += -DFFMPEG_DISABLE_INLINE_ASM +endif +endif RUSTFLAGS = --remap-path-prefix=$(CURDIR)=. EXPORTS := CC CXX CFLAGS CXXFLAGS CPPFLAGS LDFLAGS MOZILLA_OFFICIAL RUSTFLAGS diff -Nru firefox-esr-102.12.0esr/debian/upstream.mk firefox-esr-102.14.0esr/debian/upstream.mk --- firefox-esr-102.12.0esr/debian/upstream.mk 2023-06-06 20:33:25.000000000 +0000 +++ firefox-esr-102.14.0esr/debian/upstream.mk 2023-08-01 20:56:24.000000000 +0000 @@ -42,8 +42,8 @@ ifneq (,$(filter experimental,$(DEB_DISTRIBUTION))) DIST = experimental endif -ifneq (,$(filter testing% bookworm% unstable sid,$(DEB_DISTRIBUTION))) -DIST = bookworm +ifneq (,$(filter testing% unstable sid,$(DEB_DISTRIBUTION))) +DIST = trixie endif ifneq (,$(filter bpo% deb%,$(DEBIAN_RELEASE_EXTRA))) DEBIAN_TARGET := $(subst bpo,,$(subst deb,,$(DEBIAN_RELEASE_EXTRA))) diff -Nru firefox-esr-102.12.0esr/docs/writing-rust-code/xpcom.md firefox-esr-102.14.0esr/docs/writing-rust-code/xpcom.md --- firefox-esr-102.12.0esr/docs/writing-rust-code/xpcom.md 2023-05-29 17:34:26.000000000 +0000 +++ firefox-esr-102.14.0esr/docs/writing-rust-code/xpcom.md 2023-07-24 16:50:06.000000000 +0000 @@ -58,7 +58,7 @@ &self, _subject: *const nsISupports, _topic: *const c_char, - _data: *const i16, + _data: *const u16, ) -> nsresult { self.ran.store(true, Ordering::SeqCst); nserror::NS_OK diff -Nru firefox-esr-102.12.0esr/docshell/base/nsDocShell.cpp firefox-esr-102.14.0esr/docshell/base/nsDocShell.cpp --- firefox-esr-102.12.0esr/docshell/base/nsDocShell.cpp 2023-05-29 17:34:27.000000000 +0000 +++ firefox-esr-102.14.0esr/docshell/base/nsDocShell.cpp 2023-07-24 16:50:06.000000000 +0000 @@ -10231,11 +10231,7 @@ if (StaticPrefs::dom_block_external_protocol_in_iframes()) { // Only allow URLs able to return data in iframes. - bool doesNotReturnData = false; - NS_URIChainHasFlags(aLoadState->URI(), - nsIProtocolHandler::URI_DOES_NOT_RETURN_DATA, - &doesNotReturnData); - if (doesNotReturnData) { + if (nsContentUtils::IsExternalProtocol(aLoadState->URI())) { // The context to check user-interaction with for the purposes of // popup-blocking. // @@ -12880,6 +12876,11 @@ return NS_OK; } + Document* ownerDoc = aContent->OwnerDoc(); + if (nsContentUtils::IsExternalProtocol(aURI)) { + ownerDoc->EnsureNotEnteringAndExitFullscreen(); + } + bool noOpenerImplied = false; nsAutoString target(aTargetSpec); if (aFileName.IsVoid() && diff -Nru firefox-esr-102.12.0esr/dom/base/AttrArray.cpp firefox-esr-102.14.0esr/dom/base/AttrArray.cpp --- firefox-esr-102.12.0esr/dom/base/AttrArray.cpp 2023-05-29 17:34:27.000000000 +0000 +++ firefox-esr-102.14.0esr/dom/base/AttrArray.cpp 2023-07-24 16:50:06.000000000 +0000 @@ -347,10 +347,13 @@ return; } - Impl* impl = mImpl.release(); - impl = static_cast( - realloc(impl, Impl::AllocationSizeForAttributes(impl->mAttrCount))); - MOZ_ASSERT(impl, "failed to reallocate to a smaller buffer!"); + Impl* oldImpl = mImpl.release(); + Impl* impl = static_cast( + realloc(oldImpl, Impl::AllocationSizeForAttributes(oldImpl->mAttrCount))); + if (!impl) { + mImpl.reset(oldImpl); + return; + } impl->mCapacity = impl->mAttrCount; mImpl.reset(impl); } @@ -489,9 +492,12 @@ Impl::AllocationSizeForAttributes(capacity.value())); const bool needToInitialize = !mImpl; - Impl* newImpl = - static_cast(realloc(mImpl.release(), sizeInBytes.value())); - NS_ENSURE_TRUE(newImpl, false); + Impl* oldImpl = mImpl.release(); + Impl* newImpl = static_cast(realloc(oldImpl, sizeInBytes.value())); + if (!newImpl) { + mImpl.reset(oldImpl); + return false; + } mImpl.reset(newImpl); diff -Nru firefox-esr-102.12.0esr/dom/base/Document.cpp firefox-esr-102.14.0esr/dom/base/Document.cpp --- firefox-esr-102.12.0esr/dom/base/Document.cpp 2023-05-29 17:34:26.000000000 +0000 +++ firefox-esr-102.14.0esr/dom/base/Document.cpp 2023-07-24 16:50:06.000000000 +0000 @@ -3937,6 +3937,13 @@ return NS_OK; } +void Document::EnsureNotEnteringAndExitFullscreen() { + Document::ClearPendingFullscreenRequests(this); + if (GetFullscreenElement()) { + Document::AsyncExitFullscreen(this); + } +} + nsresult Document::InitReferrerInfo(nsIChannel* aChannel) { MOZ_ASSERT(mReferrerInfo); MOZ_ASSERT(mPreloadReferrerInfo); @@ -7838,7 +7845,7 @@ } // Tell the script loader about the new global object. - if (mScriptLoader) { + if (mScriptLoader && !IsTemplateContentsOwner()) { mScriptLoader->SetGlobalObject(mScriptGlobalObject); } @@ -12779,6 +12786,7 @@ mTemplateContentsOwner->mTemplateContentsOwner = mTemplateContentsOwner; } + MOZ_ASSERT(mTemplateContentsOwner->IsTemplateContentsOwner()); return mTemplateContentsOwner; } @@ -14522,29 +14530,6 @@ } } -class nsCallRequestFullscreen : public Runnable { - public: - explicit nsCallRequestFullscreen(UniquePtr aRequest) - : mozilla::Runnable("nsCallRequestFullscreen"), - mRequest(std::move(aRequest)) {} - - NS_IMETHOD Run() override { - Document* doc = mRequest->Document(); - doc->RequestFullscreen(std::move(mRequest)); - return NS_OK; - } - - UniquePtr mRequest; -}; - -void Document::AsyncRequestFullscreen(UniquePtr aRequest) { - // Request fullscreen asynchronously. - MOZ_RELEASE_ASSERT(NS_IsMainThread()); - nsCOMPtr event = - new nsCallRequestFullscreen(std::move(aRequest)); - Dispatch(TaskCategory::Other, event.forget()); -} - static void UpdateViewportScrollbarOverrideForFullscreen(Document* aDoc) { if (nsPresContext* presContext = aDoc->GetPresContext()) { presContext->UpdateViewportScrollStylesOverride(); diff -Nru firefox-esr-102.12.0esr/dom/base/Document.h firefox-esr-102.14.0esr/dom/base/Document.h --- firefox-esr-102.12.0esr/dom/base/Document.h 2023-05-29 17:34:26.000000000 +0000 +++ firefox-esr-102.14.0esr/dom/base/Document.h 2023-07-24 16:50:06.000000000 +0000 @@ -1528,6 +1528,8 @@ void InitFeaturePolicy(); nsresult InitFeaturePolicy(nsIChannel* aChannel); + void EnsureNotEnteringAndExitFullscreen(); + protected: friend class nsUnblockOnloadEvent; @@ -1877,26 +1879,24 @@ */ nsTArray GetTopLayer() const; + // Do the "fullscreen element ready check" from the fullscreen spec. + // It returns true if the given element is allowed to go into fullscreen. + // It is responsive to dispatch "fullscreenerror" event when necessary. + bool FullscreenElementReadyCheck(FullscreenRequest&); + /** - * Asynchronously requests that the document make aElement the fullscreen - * element, and move into fullscreen mode. The current fullscreen element - * (if any) is pushed onto the top layer, and it can be - * returned to fullscreen status by calling RestorePreviousFullscreenState(). + * When this is called on content process, this asynchronously requests that + * the document make aElement the fullscreen element, and move into fullscreen + * mode. The current fullscreen element (if any) is pushed onto the top layer, + * and it can be returned to fullscreen status by calling + * RestorePreviousFullscreenState(). + * If on chrome process, this is synchronously. * * Note that requesting fullscreen in a document also makes the element which * contains this document in this document's parent document fullscreen. i.e. * the