forked from pool/MozillaFirefox
Accepting request 1141490 from mozilla:Factory
- Mozilla Firefox 122.0 https://www.mozilla.org/en-US/firefox/122.0/releasenotes/ MFSA 2024-01 (bsc#1218955) * CVE-2024-0741 (bmo#1864587) Out of bounds write in ANGLE * CVE-2024-0742 (bmo#1867152) Failure to update user input timestamp * CVE-2024-0743 (bmo#1867408) Crash in NSS TLS method * CVE-2024-0744 (bmo#1871089) Wild pointer dereference in JavaScript * CVE-2024-0745 (bmo#1871838) Stack buffer overflow in WebAudio * CVE-2024-0746 (bmo#1660223) Crash when listing printers on Linux * CVE-2024-0747 (bmo#1764343) Bypass of Content Security Policy when directive unsafe-inline was set * CVE-2024-0748 (bmo#1783504) Compromised content process could modify document URI * CVE-2024-0749 (bmo#1813463) Phishing site popup could show local origin in address bar * CVE-2024-0750 (bmo#1863083) Potential permissions request bypass via clickjacking * CVE-2024-0751 (bmo#1865689) Privilege escalation through devtools * CVE-2024-0752 (bmo#1866840) Use-after-free could occur when applying update on macOS * CVE-2024-0753 (bmo#1870262) HSTS policy on subdomain could bypass policy of upper domain * CVE-2024-0754 (bmo#1871605) OBS-URL: https://build.opensuse.org/request/show/1141490 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/MozillaFirefox?expand=0&rev=417
This commit is contained in:
commit
fbd6485905
@ -1,3 +1,43 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Jan 21 09:16:30 UTC 2024 - Wolfgang Rosenauer <wr@rosenauer.org>
|
||||||
|
|
||||||
|
- Mozilla Firefox 122.0
|
||||||
|
https://www.mozilla.org/en-US/firefox/122.0/releasenotes/
|
||||||
|
MFSA 2024-01 (bsc#1218955)
|
||||||
|
* CVE-2024-0741 (bmo#1864587)
|
||||||
|
Out of bounds write in ANGLE
|
||||||
|
* CVE-2024-0742 (bmo#1867152)
|
||||||
|
Failure to update user input timestamp
|
||||||
|
* CVE-2024-0743 (bmo#1867408)
|
||||||
|
Crash in NSS TLS method
|
||||||
|
* CVE-2024-0744 (bmo#1871089)
|
||||||
|
Wild pointer dereference in JavaScript
|
||||||
|
* CVE-2024-0745 (bmo#1871838)
|
||||||
|
Stack buffer overflow in WebAudio
|
||||||
|
* CVE-2024-0746 (bmo#1660223)
|
||||||
|
Crash when listing printers on Linux
|
||||||
|
* CVE-2024-0747 (bmo#1764343)
|
||||||
|
Bypass of Content Security Policy when directive unsafe-inline was set
|
||||||
|
* CVE-2024-0748 (bmo#1783504)
|
||||||
|
Compromised content process could modify document URI
|
||||||
|
* CVE-2024-0749 (bmo#1813463)
|
||||||
|
Phishing site popup could show local origin in address bar
|
||||||
|
* CVE-2024-0750 (bmo#1863083)
|
||||||
|
Potential permissions request bypass via clickjacking
|
||||||
|
* CVE-2024-0751 (bmo#1865689)
|
||||||
|
Privilege escalation through devtools
|
||||||
|
* CVE-2024-0752 (bmo#1866840)
|
||||||
|
Use-after-free could occur when applying update on macOS
|
||||||
|
* CVE-2024-0753 (bmo#1870262)
|
||||||
|
HSTS policy on subdomain could bypass policy of upper domain
|
||||||
|
* CVE-2024-0754 (bmo#1871605)
|
||||||
|
Crash when using some WASM files in devtools
|
||||||
|
* CVE-2024-0755 (bmo#1868456, bmo#1871445, bmo#1873701)
|
||||||
|
Memory safety bugs fixed in Firefox 122, Firefox ESR 115.7,
|
||||||
|
and Thunderbird 115.7
|
||||||
|
- requires NSS 3.96.1
|
||||||
|
- rebased patches
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Jan 9 20:36:26 UTC 2024 - Andreas Stieger <andreas.stieger@gmx.de>
|
Tue Jan 9 20:36:26 UTC 2024 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# spec file
|
# spec file for package MozillaFirefox
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2024 SUSE LLC
|
||||||
# Copyright (c) 2006-2023 Wolfgang Rosenauer <wr@rosenauer.org>
|
# Copyright (c) 2006-2023 Wolfgang Rosenauer <wr@rosenauer.org>
|
||||||
@ -28,9 +28,9 @@
|
|||||||
# orig_suffix b3
|
# orig_suffix b3
|
||||||
# major 69
|
# major 69
|
||||||
# mainver %%major.99
|
# mainver %%major.99
|
||||||
%define major 121
|
%define major 122
|
||||||
%define mainver %major.0.1
|
%define mainver %major.0
|
||||||
%define orig_version 121.0.1
|
%define orig_version 122.0
|
||||||
%define orig_suffix %{nil}
|
%define orig_suffix %{nil}
|
||||||
%define update_channel release
|
%define update_channel release
|
||||||
%define branding 1
|
%define branding 1
|
||||||
@ -114,7 +114,7 @@ BuildRequires: libiw-devel
|
|||||||
BuildRequires: libproxy-devel
|
BuildRequires: libproxy-devel
|
||||||
BuildRequires: makeinfo
|
BuildRequires: makeinfo
|
||||||
BuildRequires: mozilla-nspr-devel >= 4.35
|
BuildRequires: mozilla-nspr-devel >= 4.35
|
||||||
BuildRequires: mozilla-nss-devel >= 3.95
|
BuildRequires: mozilla-nss-devel >= 3.96.1
|
||||||
BuildRequires: nasm >= 2.14
|
BuildRequires: nasm >= 2.14
|
||||||
BuildRequires: nodejs >= 12.22.12
|
BuildRequires: nodejs >= 12.22.12
|
||||||
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000
|
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000
|
||||||
@ -235,7 +235,7 @@ Patch102: firefox-branded-icons.patch
|
|||||||
%endif
|
%endif
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
Requires(post): coreutils shared-mime-info desktop-file-utils
|
Requires(post): coreutils shared-mime-info desktop-file-utils
|
||||||
Requires(postun):shared-mime-info desktop-file-utils
|
Requires(postun): shared-mime-info desktop-file-utils
|
||||||
Requires: %{name}-branding >= 68
|
Requires: %{name}-branding >= 68
|
||||||
%requires_ge mozilla-nspr
|
%requires_ge mozilla-nspr
|
||||||
%requires_ge mozilla-nss
|
%requires_ge mozilla-nss
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:b3a4216e01eaeb9a7c6ef4659d8dcd956fbd90a78a8279ee3a598881e63e49ce
|
|
||||||
size 532719356
|
|
@ -1,16 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQIzBAABCgAdFiEErdcHlHlwDcrf3VM34207E/PZMnQFAmWcQ3oACgkQ4207E/PZ
|
|
||||||
MnRveA//aNho9CZVoeE/FljP6DwfbJ/VgiNWzaZbKdEGGwOq3L/XFBBDS23/O9S2
|
|
||||||
jCg21VSx6bfk0MnLU8kIFfxcX9R2SVy3VdnasgjYIoAF2OdmN+csz0Ax80IDzsbZ
|
|
||||||
Ee8HKw/z/XHmVXSEAPqnzEK6+HHCygbcoH801ui4vYFpvvcSPmwHkwUX6U10Bmow
|
|
||||||
kWq5MaopsroiMp1YPkdJWmDZ+sBaNTaLHxcv21CZBXClTjAqWshLWuUk2S5LigNS
|
|
||||||
x+K4WqttRpV2eQeLXiZdCS69/efUFWDaedSNGVMd/JUR3s9rldyviVZsd+uARVeA
|
|
||||||
wWnl7hyCOVu3z8cVGnrZsW5bIp3vsrX7IWNtkllnpZmxL+3mw6zCSWJvDDsQjrRh
|
|
||||||
hfXxbDsPpi5s2zbuYTumEM/lePQnLGOu9GLeu9+UJDdcYNL8JJyn/A0Q1BMwD0a+
|
|
||||||
oEJrwWn2psCu2HSbDrazv53Qxc3DqIieW79KSvr6kgt3dEVDp1blXdAf5klJc3yr
|
|
||||||
md6yqTRzbfZEETWIAyz58kXd6ylXz3yKGiAjw06+hfQMumXkUmhqQw+PN7VBGH0J
|
|
||||||
bn9ABQko7vWgPYhog+rFIDM9uqnlZAe4645MKsa5v+SHxqiV4CS7LKxzTCkulFj5
|
|
||||||
UrHkwJhtG8OwYRX6SaPGC6BHxrmvxLrpRU9BMsCQJxaOZ9LS0v0=
|
|
||||||
=Jbh0
|
|
||||||
-----END PGP SIGNATURE-----
|
|
3
firefox-122.0.source.tar.xz
Normal file
3
firefox-122.0.source.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:b84815a90e147965e4c0b50599c85b1022ab0fce42105e5ef45c630dcca5dec3
|
||||||
|
size 531823484
|
16
firefox-122.0.source.tar.xz.asc
Normal file
16
firefox-122.0.source.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQIzBAABCgAdFiEErdcHlHlwDcrf3VM34207E/PZMnQFAmWplVMACgkQ4207E/PZ
|
||||||
|
MnQIqhAAt3b8pfIGgAlbjgR5NJP+1mVMRQAUjVur6t9xXLGRKbKa4mXWjVb4rzEo
|
||||||
|
r3kcGxHouX40RTrOInOnnvG/ECG1gTE401wmsPCLrWKldA/nG6Ya2bbhDR0x8cFi
|
||||||
|
SwHjAhWJEqJLVU5oeJyM/msO8zLGk8S7xsek1M9pW0yund0bXkY3tucsfW22oc8X
|
||||||
|
LGsANQoyeAGUVe2igKHgAZ33vMy3G9uKkUVdhGppu/jJ0dJvbi5F7MaWwYrKKdFQ
|
||||||
|
Ej1ASNPyYJO8r3/oXQywJhiLD5Z9KdWMpDHlRGCKQeyRPlWNZwhqvui2D1xtEqtI
|
||||||
|
gTHsKPS8VZIoQSn6k7CyObt40jWhWyEJnqY+J4FYS4lfB7DcEO2a6ILe6gWcam0t
|
||||||
|
/120TFrc92kAj7iEq6xxKtLD8gF9Kw5OfCEc0c6U+CDG3A0pg2a8M9vbYBzLSlIK
|
||||||
|
3ejzEcM1iNP3td92tlkw+erO6+LqXXfUloU0Il/mF/Les4OWBZWr9E0gzJacWrKw
|
||||||
|
mz5T7M/VsumuMiLoQcVZQdweP9W8HlN9oU+uYPAiSJFqAT4LpLOzJvfye6opipmf
|
||||||
|
YOxSBTq9oOzweoMsGBXD6DcXG6U8AH+TlbLSU+s5umWjqEnxXH/yzkpnHWf4onaD
|
||||||
|
3QbeWks5KAe3d/pxJZXV2apeGtqsW+lpgiqiUyHWg9fxiOY3Zzs=
|
||||||
|
=BqGq
|
||||||
|
-----END PGP SIGNATURE-----
|
@ -1,26 +1,35 @@
|
|||||||
# HG changeset patch
|
# HG changeset patch
|
||||||
# Parent e0751ad74e835e80041a61ea00c2a63bf6fbe2de
|
# Parent e0751ad74e835e80041a61ea00c2a63bf6fbe2de
|
||||||
# Parent fe7e6fdd75484993420740244f21b5b41d6e0fa1
|
# Parent ebf6598a9309200fcea0cedb08e39161b82a73f9
|
||||||
|
|
||||||
Index: firefox-115.0/browser/branding/branding-common.mozbuild
|
diff --git a/browser/branding/branding-common.mozbuild b/browser/branding/branding-common.mozbuild
|
||||||
===================================================================
|
--- a/browser/branding/branding-common.mozbuild
|
||||||
--- firefox-115.0.orig/browser/branding/branding-common.mozbuild
|
+++ b/browser/branding/branding-common.mozbuild
|
||||||
+++ firefox-115.0/browser/branding/branding-common.mozbuild
|
@@ -26,12 +26,15 @@ def FirefoxBranding():
|
||||||
@@ -30,6 +30,9 @@ def FirefoxBranding():
|
"PrivateBrowsing_70.png",
|
||||||
|
"VisualElements_150.png",
|
||||||
|
"VisualElements_70.png",
|
||||||
|
]
|
||||||
|
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
|
||||||
FINAL_TARGET_FILES.chrome.icons.default += [
|
FINAL_TARGET_FILES.chrome.icons.default += [
|
||||||
'default128.png',
|
"default128.png",
|
||||||
'default16.png',
|
"default16.png",
|
||||||
+ 'default22.png',
|
+ "default22.png",
|
||||||
+ 'default24.png',
|
+ "default24.png",
|
||||||
+ 'default256.png',
|
+ "default256.png",
|
||||||
'default32.png',
|
"default32.png",
|
||||||
'default48.png',
|
"default48.png",
|
||||||
'default64.png',
|
"default64.png",
|
||||||
Index: firefox-115.0/browser/installer/package-manifest.in
|
]
|
||||||
===================================================================
|
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
|
||||||
--- firefox-115.0.orig/browser/installer/package-manifest.in
|
--- a/browser/installer/package-manifest.in
|
||||||
+++ firefox-115.0/browser/installer/package-manifest.in
|
+++ b/browser/installer/package-manifest.in
|
||||||
@@ -227,10 +227,13 @@
|
@@ -216,20 +216,23 @@
|
||||||
|
@RESPATH@/browser/chrome/browser@JAREXT@
|
||||||
|
@RESPATH@/browser/chrome/browser.manifest
|
||||||
|
@RESPATH@/chrome/pdfjs.manifest
|
||||||
|
@RESPATH@/chrome/pdfjs/*
|
||||||
|
@RESPATH@/chrome/toolkit@JAREXT@
|
||||||
@RESPATH@/chrome/toolkit.manifest
|
@RESPATH@/chrome/toolkit.manifest
|
||||||
#ifdef MOZ_GTK
|
#ifdef MOZ_GTK
|
||||||
@RESPATH@/browser/chrome/icons/default/default16.png
|
@RESPATH@/browser/chrome/icons/default/default16.png
|
||||||
@ -34,3 +43,8 @@ Index: firefox-115.0/browser/installer/package-manifest.in
|
|||||||
#endif
|
#endif
|
||||||
@RESPATH@/browser/features/*
|
@RESPATH@/browser/features/*
|
||||||
|
|
||||||
|
; [DevTools Startup Files]
|
||||||
|
@RESPATH@/browser/chrome/devtools-startup@JAREXT@
|
||||||
|
@RESPATH@/browser/chrome/devtools-startup.manifest
|
||||||
|
|
||||||
|
; DevTools
|
||||||
|
@ -29,7 +29,7 @@ How to apply this patch:
|
|||||||
diff --git a/browser/components/preferences/main.js b/browser/components/preferences/main.js
|
diff --git a/browser/components/preferences/main.js b/browser/components/preferences/main.js
|
||||||
--- a/browser/components/preferences/main.js
|
--- a/browser/components/preferences/main.js
|
||||||
+++ b/browser/components/preferences/main.js
|
+++ b/browser/components/preferences/main.js
|
||||||
@@ -291,16 +291,23 @@ var gMainPane = {
|
@@ -292,16 +292,23 @@ var gMainPane = {
|
||||||
}, backoffTimes[this._backoffIndex + 1 < backoffTimes.length ? this._backoffIndex++ : backoffTimes.length - 1]);
|
}, backoffTimes[this._backoffIndex + 1 < backoffTimes.length ? this._backoffIndex++ : backoffTimes.length - 1]);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -53,15 +53,15 @@ diff --git a/browser/components/preferences/main.js b/browser/components/prefere
|
|||||||
let defaultPerformancePref = Preferences.get(
|
let defaultPerformancePref = Preferences.get(
|
||||||
"browser.preferences.defaultPerformanceSettings.enabled"
|
"browser.preferences.defaultPerformanceSettings.enabled"
|
||||||
);
|
);
|
||||||
@@ -1744,16 +1751,27 @@ var gMainPane = {
|
@@ -1753,16 +1760,27 @@ var gMainPane = {
|
||||||
this._backoffIndex = 0;
|
|
||||||
|
// Disable the set default button, so that the user doesn't try to hit it again
|
||||||
|
// while awaiting on setDefaultBrowser
|
||||||
|
let setDefaultButton = document.getElementById("setDefaultButton");
|
||||||
|
setDefaultButton.disabled = true;
|
||||||
|
|
||||||
let shellSvc = getShellService();
|
|
||||||
if (!shellSvc) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
try {
|
try {
|
||||||
shellSvc.setDefaultBrowser(false);
|
await shellSvc.setDefaultBrowser(false);
|
||||||
+ if (kde_session == 1) {
|
+ if (kde_session == 1) {
|
||||||
+ var shellObj = Components.classes["@mozilla.org/file/local;1"]
|
+ var shellObj = Components.classes["@mozilla.org/file/local;1"]
|
||||||
+ .createInstance(Components.interfaces.nsILocalFile);
|
+ .createInstance(Components.interfaces.nsILocalFile);
|
||||||
@ -76,11 +76,11 @@ diff --git a/browser/components/preferences/main.js b/browser/components/prefere
|
|||||||
} catch (ex) {
|
} catch (ex) {
|
||||||
console.error(ex);
|
console.error(ex);
|
||||||
return;
|
return;
|
||||||
|
} finally {
|
||||||
|
// Make sure to re-enable the default button when we're finished, regardless of the outcome
|
||||||
|
setDefaultButton.disabled = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
let isDefault = shellSvc.isDefaultBrowser(false, true);
|
|
||||||
let setDefaultPane = document.getElementById("setDefaultPane");
|
|
||||||
setDefaultPane.classList.toggle("is-default", isDefault);
|
|
||||||
diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
|
diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
|
||||||
--- a/browser/components/shell/moz.build
|
--- a/browser/components/shell/moz.build
|
||||||
+++ b/browser/components/shell/moz.build
|
+++ b/browser/components/shell/moz.build
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:deb04717fd63b5fbfeaf7cc067e17a0b9ee34458a0c5dd54fd81d1018cad976f
|
|
||||||
size 30916100
|
|
3
l10n-122.0.tar.xz
Normal file
3
l10n-122.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:46fcbb122d6bc321c4f6be604a47d3107f5cabfbdbc9b6747b478c012780edf1
|
||||||
|
size 31066796
|
@ -3,13 +3,18 @@
|
|||||||
# Date 1695432215 25200
|
# Date 1695432215 25200
|
||||||
# Fri Sep 22 18:23:35 2023 -0700
|
# Fri Sep 22 18:23:35 2023 -0700
|
||||||
# Node ID e6a8a9f0956d124e8de34eb4bcf09d8e17077d9d
|
# Node ID e6a8a9f0956d124e8de34eb4bcf09d8e17077d9d
|
||||||
# Parent 677cbf2e64cdcd3a93e644f781be2bdc2529ba1a
|
# Parent 5dbbabbfaca21d2c5994f95ed095313284611c44
|
||||||
Bug 1822730 - Add basic blob protocol handling for blob URIs that contain parsable http/s protocols
|
Bug 1822730 - Add basic blob protocol handling for blob URIs that contain parsable http/s protocols
|
||||||
|
|
||||||
diff --git a/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs b/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs
|
diff --git a/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs b/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs
|
||||||
--- a/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs
|
--- a/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs
|
||||||
+++ b/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs
|
+++ b/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs
|
||||||
@@ -221,11 +221,13 @@ export class DownloadLastDir {
|
@@ -216,38 +216,49 @@ export class DownloadLastDir {
|
||||||
|
Services.prefs.setComplexValue(LAST_DIR_PREF, nsIFile, aFile);
|
||||||
|
} else if (Services.prefs.prefHasUserValue(LAST_DIR_PREF)) {
|
||||||
|
Services.prefs.clearUserPref(LAST_DIR_PREF);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pre-processor to extract a domain name to be used with the content-prefs
|
* Pre-processor to extract a domain name to be used with the content-prefs
|
||||||
@ -20,12 +25,13 @@ diff --git a/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs b/toolkit/mozapps
|
|||||||
* - all file:/// URIs share the same folder
|
* - all file:/// URIs share the same folder
|
||||||
* - data: URIs share a folder per mime-type. If a mime-type is not
|
* - data: URIs share a folder per mime-type. If a mime-type is not
|
||||||
* specified text/plain is assumed.
|
* specified text/plain is assumed.
|
||||||
+ * - blob: blob URIs are tested for http/https and the blob protocol
|
* - blob: URIs share the same folder as their origin. This is done by
|
||||||
+ * is stripped.
|
* ContentPrefs already, so we just let the url fall-through.
|
||||||
* In any other case the original URL is returned as a string and ContentPrefs
|
* In any other case the original URL is returned as a string and ContentPrefs
|
||||||
* will do its usual parsing.
|
* will do its usual parsing.
|
||||||
*
|
*
|
||||||
@@ -234,6 +236,9 @@ export class DownloadLastDir {
|
* @param {string|nsIURI|URL} url The URL to parse
|
||||||
|
* @returns {string} the domain name to use, or the original url.
|
||||||
*/
|
*/
|
||||||
#cpsGroupFromURL(url) {
|
#cpsGroupFromURL(url) {
|
||||||
if (typeof url == "string") {
|
if (typeof url == "string") {
|
||||||
@ -35,7 +41,7 @@ diff --git a/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs b/toolkit/mozapps
|
|||||||
url = new URL(url);
|
url = new URL(url);
|
||||||
} else if (url instanceof Ci.nsIURI) {
|
} else if (url instanceof Ci.nsIURI) {
|
||||||
url = URL.fromURI(url);
|
url = URL.fromURI(url);
|
||||||
@@ -241,6 +246,14 @@ export class DownloadLastDir {
|
}
|
||||||
if (!URL.isInstance(url)) {
|
if (!URL.isInstance(url)) {
|
||||||
return url;
|
return url;
|
||||||
}
|
}
|
||||||
@ -50,3 +56,8 @@ diff --git a/toolkit/mozapps/downloads/DownloadLastDir.sys.mjs b/toolkit/mozapps
|
|||||||
if (url.protocol == "data:") {
|
if (url.protocol == "data:") {
|
||||||
return url.href.match(/^data:[^;,]*/i)[0].replace(/:$/, ":text/plain");
|
return url.href.match(/^data:[^;,]*/i)[0].replace(/:$/, ":text/plain");
|
||||||
}
|
}
|
||||||
|
if (url.protocol == "file:") {
|
||||||
|
return "file:///";
|
||||||
|
}
|
||||||
|
return url.href;
|
||||||
|
}
|
||||||
|
@ -50,7 +50,7 @@ Co-authored-by: Björn Bidar <bjorn.bidar@thaodan.de>
|
|||||||
diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||||
--- a/modules/libpref/Preferences.cpp
|
--- a/modules/libpref/Preferences.cpp
|
||||||
+++ b/modules/libpref/Preferences.cpp
|
+++ b/modules/libpref/Preferences.cpp
|
||||||
@@ -91,16 +91,17 @@
|
@@ -90,16 +90,17 @@
|
||||||
#include "PLDHashTable.h"
|
#include "PLDHashTable.h"
|
||||||
#include "prdtoa.h"
|
#include "prdtoa.h"
|
||||||
#include "prlink.h"
|
#include "prlink.h"
|
||||||
@ -1235,7 +1235,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
|||||||
# include "Units.h"
|
# include "Units.h"
|
||||||
extern mozilla::LazyLogModule gWidgetLog;
|
extern mozilla::LazyLogModule gWidgetLog;
|
||||||
# define LOG(args) MOZ_LOG(gWidgetLog, mozilla::LogLevel::Debug, args)
|
# define LOG(args) MOZ_LOG(gWidgetLog, mozilla::LogLevel::Debug, args)
|
||||||
@@ -305,17 +308,18 @@ nsFilePicker::AppendFilters(int32_t aFil
|
@@ -302,17 +305,18 @@ nsFilePicker::AppendFilters(int32_t aFil
|
||||||
mAllowURLs = !!(aFilterMask & filterAllowURLs);
|
mAllowURLs = !!(aFilterMask & filterAllowURLs);
|
||||||
return nsBaseFilePicker::AppendFilters(aFilterMask);
|
return nsBaseFilePicker::AppendFilters(aFilterMask);
|
||||||
}
|
}
|
||||||
@ -1255,19 +1255,18 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
|||||||
|
|
||||||
mFilters.AppendElement(filter);
|
mFilters.AppendElement(filter);
|
||||||
mFilterNames.AppendElement(name);
|
mFilterNames.AppendElement(name);
|
||||||
@@ -415,16 +419,41 @@ nsresult nsFilePicker::Show(nsIFilePicke
|
@@ -412,16 +416,39 @@ nsresult nsFilePicker::Show(nsIFilePicke
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
nsFilePicker::Open(nsIFilePickerShownCallback* aCallback) {
|
nsFilePicker::Open(nsIFilePickerShownCallback* aCallback) {
|
||||||
// Can't show two dialogs concurrently with the same filepicker
|
// Can't show two dialogs concurrently with the same filepicker
|
||||||
if (mRunning) return NS_ERROR_NOT_AVAILABLE;
|
if (mFileChooser) return NS_ERROR_NOT_AVAILABLE;
|
||||||
|
|
||||||
+ // KDE file picker is not handled via callback
|
+ // KDE file picker is not handled via callback
|
||||||
+ if (nsKDEUtils::kdeSupport()) {
|
+ if (nsKDEUtils::kdeSupport()) {
|
||||||
+ mCallback = aCallback;
|
+ mCallback = aCallback;
|
||||||
+ mRunning = true;
|
|
||||||
+ NS_ADDREF_THIS();
|
+ NS_ADDREF_THIS();
|
||||||
+ g_idle_add(
|
+ g_idle_add(
|
||||||
+ [](gpointer data) -> gboolean {
|
+ [](gpointer data) -> gboolean {
|
||||||
@ -1280,7 +1279,6 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
|||||||
+ } else {
|
+ } else {
|
||||||
+ queuedPicker->mResult = result;
|
+ queuedPicker->mResult = result;
|
||||||
+ }
|
+ }
|
||||||
+ queuedPicker->mRunning = false;
|
|
||||||
+ NS_RELEASE(queuedPicker);
|
+ NS_RELEASE(queuedPicker);
|
||||||
+ return G_SOURCE_REMOVE;
|
+ return G_SOURCE_REMOVE;
|
||||||
+ },
|
+ },
|
||||||
@ -1297,7 +1295,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
|||||||
GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
|
GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
|
||||||
|
|
||||||
const gchar* accept_button;
|
const gchar* accept_button;
|
||||||
@@ -696,16 +725,215 @@ void nsFilePicker::Done(void* file_choos
|
@@ -703,16 +730,215 @@ void nsFilePicker::Done(void* file_choos
|
||||||
mCallback->Done(result);
|
mCallback->Done(result);
|
||||||
mCallback = nullptr;
|
mCallback = nullptr;
|
||||||
} else {
|
} else {
|
||||||
|
@ -1,17 +1,17 @@
|
|||||||
# HG changeset patch
|
# HG changeset patch
|
||||||
# Parent b62ddf6a31854e9e3c22a81056d233a50b4dd5c4
|
# Parent fa3b49f090f8b4a1af0510a675d2674a420fcbc6
|
||||||
|
|
||||||
diff --git a/Cargo.toml b/Cargo.toml
|
diff --git a/Cargo.toml b/Cargo.toml
|
||||||
--- a/Cargo.toml
|
--- a/Cargo.toml
|
||||||
+++ b/Cargo.toml
|
+++ b/Cargo.toml
|
||||||
@@ -206,8 +206,13 @@ webext-storage = { git = "https://github
|
@@ -219,8 +219,13 @@ webext-storage = { git = "https://github
|
||||||
path = "third_party/rust/mio-0.6.23"
|
path = "third_party/rust/mio-0.6.23"
|
||||||
|
|
||||||
[patch."https://github.com/mozilla/uniffi-rs.git"]
|
[patch."https://github.com/mozilla/uniffi-rs.git"]
|
||||||
uniffi = "=0.24.3"
|
uniffi = "=0.25.3"
|
||||||
uniffi_bindgen = "=0.24.3"
|
uniffi_bindgen = "=0.25.3"
|
||||||
uniffi_build = "=0.24.3"
|
uniffi_build = "=0.25.3"
|
||||||
uniffi_macros = "=0.24.3"
|
uniffi_macros = "=0.25.3"
|
||||||
weedle2 = "=4.0.0"
|
weedle2 = "=4.0.0"
|
||||||
+
|
+
|
||||||
+# Package code v0.1.4 uses code "that will be rejected by a future version of Rust"
|
+# Package code v0.1.4 uses code "that will be rejected by a future version of Rust"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# HG changeset patch
|
# HG changeset patch
|
||||||
# Parent e7eb7e9e99204275532b04de030879c9548b88a3
|
# Parent f5fd2bbd77ef4b6554a7180c9c4768e64aca3b2a
|
||||||
|
|
||||||
diff --git a/gfx/skia/skia/include/codec/SkEncodedOrigin.h b/gfx/skia/skia/include/codec/SkEncodedOrigin.h
|
diff --git a/gfx/skia/skia/include/codec/SkEncodedOrigin.h b/gfx/skia/skia/include/codec/SkEncodedOrigin.h
|
||||||
--- a/gfx/skia/skia/include/codec/SkEncodedOrigin.h
|
--- a/gfx/skia/skia/include/codec/SkEncodedOrigin.h
|
||||||
@ -526,7 +526,7 @@ diff --git a/third_party/libwebrtc/api/video_codecs/video_codec.cc b/third_party
|
|||||||
diff --git a/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc b/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc
|
diff --git a/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc b/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc
|
||||||
--- a/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc
|
--- a/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc
|
||||||
+++ b/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc
|
+++ b/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallback_wrapper.cc
|
||||||
@@ -158,16 +158,17 @@ class VideoEncoderSoftwareFallbackWrappe
|
@@ -183,16 +183,17 @@ class VideoEncoderSoftwareFallbackWrappe
|
||||||
[[fallthrough]];
|
[[fallthrough]];
|
||||||
case EncoderState::kMainEncoderUsed:
|
case EncoderState::kMainEncoderUsed:
|
||||||
return encoder_.get();
|
return encoder_.get();
|
||||||
@ -544,7 +544,7 @@ diff --git a/third_party/libwebrtc/api/video_codecs/video_encoder_software_fallb
|
|||||||
|
|
||||||
// Settings used in the last InitEncode call and used if a dynamic fallback to
|
// Settings used in the last InitEncode call and used if a dynamic fallback to
|
||||||
// software is required.
|
// software is required.
|
||||||
@@ -338,16 +339,17 @@ int32_t VideoEncoderSoftwareFallbackWrap
|
@@ -363,16 +364,17 @@ int32_t VideoEncoderSoftwareFallbackWrap
|
||||||
case EncoderState::kMainEncoderUsed: {
|
case EncoderState::kMainEncoderUsed: {
|
||||||
return EncodeWithMainEncoder(frame, frame_types);
|
return EncodeWithMainEncoder(frame, frame_types);
|
||||||
}
|
}
|
||||||
@ -684,7 +684,7 @@ diff --git a/third_party/libwebrtc/call/video_send_stream.cc b/third_party/libwe
|
|||||||
diff --git a/third_party/libwebrtc/media/base/codec.cc b/third_party/libwebrtc/media/base/codec.cc
|
diff --git a/third_party/libwebrtc/media/base/codec.cc b/third_party/libwebrtc/media/base/codec.cc
|
||||||
--- a/third_party/libwebrtc/media/base/codec.cc
|
--- a/third_party/libwebrtc/media/base/codec.cc
|
||||||
+++ b/third_party/libwebrtc/media/base/codec.cc
|
+++ b/third_party/libwebrtc/media/base/codec.cc
|
||||||
@@ -195,16 +195,17 @@ bool Codec::Matches(const Codec& codec,
|
@@ -201,16 +201,17 @@ bool Codec::Matches(const Codec& codec,
|
||||||
(codec.bitrate == 0 || bitrate <= 0 ||
|
(codec.bitrate == 0 || bitrate <= 0 ||
|
||||||
bitrate == codec.bitrate) &&
|
bitrate == codec.bitrate) &&
|
||||||
((codec.channels < 2 && channels < 2) ||
|
((codec.channels < 2 && channels < 2) ||
|
||||||
@ -699,9 +699,9 @@ diff --git a/third_party/libwebrtc/media/base/codec.cc b/third_party/libwebrtc/m
|
|||||||
return matches_id && matches_type_specific();
|
return matches_id && matches_type_specific();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Codec::MatchesCapability(
|
bool Codec::MatchesRtpCodec(const webrtc::RtpCodec& codec_capability) const {
|
||||||
const webrtc::RtpCodecCapability& codec_capability) const {
|
|
||||||
webrtc::RtpCodecParameters codec_parameters = ToCodecParameters();
|
webrtc::RtpCodecParameters codec_parameters = ToCodecParameters();
|
||||||
|
|
||||||
diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/clipping_predictor.cc b/third_party/libwebrtc/modules/audio_processing/agc2/clipping_predictor.cc
|
diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/clipping_predictor.cc b/third_party/libwebrtc/modules/audio_processing/agc2/clipping_predictor.cc
|
||||||
--- a/third_party/libwebrtc/modules/audio_processing/agc2/clipping_predictor.cc
|
--- a/third_party/libwebrtc/modules/audio_processing/agc2/clipping_predictor.cc
|
||||||
+++ b/third_party/libwebrtc/modules/audio_processing/agc2/clipping_predictor.cc
|
+++ b/third_party/libwebrtc/modules/audio_processing/agc2/clipping_predictor.cc
|
||||||
@ -957,7 +957,7 @@ diff --git a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender.cc b/third
|
|||||||
diff --git a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc b/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc
|
diff --git a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc b/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc
|
||||||
--- a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc
|
--- a/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc
|
||||||
+++ b/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc
|
+++ b/third_party/libwebrtc/modules/rtp_rtcp/source/rtp_sender_audio.cc
|
||||||
@@ -40,16 +40,17 @@ namespace {
|
@@ -41,16 +41,17 @@ namespace {
|
||||||
case AudioFrameType::kEmptyFrame:
|
case AudioFrameType::kEmptyFrame:
|
||||||
return "empty";
|
return "empty";
|
||||||
case AudioFrameType::kAudioFrameSpeech:
|
case AudioFrameType::kAudioFrameSpeech:
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
PRODUCT="firefox"
|
PRODUCT="firefox"
|
||||||
CHANNEL="release"
|
CHANNEL="release"
|
||||||
VERSION="121.0.1"
|
VERSION="122.0"
|
||||||
VERSION_SUFFIX=""
|
VERSION_SUFFIX=""
|
||||||
PREV_VERSION="121.0"
|
PREV_VERSION="121.0.1"
|
||||||
PREV_VERSION_SUFFIX=""
|
PREV_VERSION_SUFFIX=""
|
||||||
#SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation
|
#SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation
|
||||||
RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-release"
|
RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-release"
|
||||||
RELEASE_TAG="484be1feb7138af0917df98dda85050e0a3317a8"
|
RELEASE_TAG="4a223e3aab98f1c3ab862c6f08c3ffd1b3fabe8b"
|
||||||
RELEASE_TIMESTAMP="20240108143603"
|
RELEASE_TIMESTAMP="20240118164516"
|
||||||
|
Loading…
Reference in New Issue
Block a user