--- a/MozillaFirefox/MozillaFirefox.changes Sun Feb 09 08:35:05 2020 +0100
+++ b/MozillaFirefox/MozillaFirefox.changes Wed Feb 19 22:51:20 2020 +0100
@@ -1,4 +1,50 @@
-------------------------------------------------------------------
+Sun Feb 9 07:45:00 UTC 2020 - Wolfgang Rosenauer <wr@rosenauer.org>
+
+- Mozilla Firefox 73.0
+ * Added support for setting a default zoom level applicable for all
+ web content
+ * High-contrast mode has been updated to allow background images
+ * Improved audio quality when playing back audio at a faster or
+ slower speed
+ * Added NextDNS as alternative option for DNS over HTTPS
+ MFSA 2020-05 (bsc#1163368)
+ * CVE-2020-6796 (bmo#1610426)
+ Missing bounds check on shared memory read in the parent process
+ * CVE-2020-6797 (bmo#1596668) (MacOS X only)
+ Extensions granted downloads.open permission could open arbitrary
+ applications on Mac OSX
+ * CVE-2020-6798 (bmo#1602944)
+ Incorrect parsing of template tag could result in JavaScript injection
+ * CVE-2020-6799 (bmo#1606596) (Windows only)
+ Arbitrary code execution when opening pdf links from other
+ applications, when Firefox is configured as default pdf reader
+ * CVE-2020-6800 (bmo#1595786,bmo#1596706,bmo#1598543,bmo#1604851,
+ bmo#1608580,bmo#1608785,bmo#1605777)
+ Memory safety bugs fixed in Firefox 73 and Firefox ESR 68.5
+ * CVE-2020-6801 (bmo#1601024,bmo#1601712,bmo#1604836,bmo#1606492)
+ Memory safety bugs fixed in Firefox 73
+- updated requirements
+ * rust >= 1.39
+ * NSS >= 3.49.2
+ * rust-cbindgen >= 0.12.0
+- rebased patches
+- removed obsolete patch
+ * mozilla-bmo1601707.patch
+- switched to cairo-gtk3-wayland build
+ (to fully enable wayland MOZ_ENABLE_WAYLAND=1 needs to be set)
+- disabled elfhack due to failing packager
+ https://github.com/openSUSE/firefox-maintenance/issues/28
+- disabled PGO due to build failure
+ https://github.com/openSUSE/firefox-maintenance/issues/29
+
+-------------------------------------------------------------------
+Tue Jan 28 07:30:16 UTC 2020 - Stasiek Michalski <stasiek@michalski.cc>
+
+- Use a symbolic icon from branding internals
+- Pixmaps no longer required for the desktops
+
+-------------------------------------------------------------------
Wed Jan 22 10:30:21 UTC 2020 - Wolfgang Rosenauer <wr@rosenauer.org>
- Mozilla Firefox 72.0.2
--- a/MozillaFirefox/MozillaFirefox.spec Sun Feb 09 08:35:05 2020 +0100
+++ b/MozillaFirefox/MozillaFirefox.spec Wed Feb 19 22:51:20 2020 +0100
@@ -2,7 +2,7 @@
# spec file for package MozillaFirefox
#
# Copyright (c) 2020 SUSE LLC
-# 2006-2019 Wolfgang Rosenauer <wr@rosenauer.org>
+# 2006-2020 Wolfgang Rosenauer <wr@rosenauer.org>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,14 +18,17 @@
# changed with every update
-%define major 72
-%define mainver %major.0.2
-%define orig_version 72.0.2
+%define major 73
+%define mainver %major.0
+%define orig_version 73.0
%define orig_suffix %{nil}
%define update_channel release
%define branding 1
%define devpkg 1
+# disable for FF73 for now as it fails for unknown reason
+%define do_profiling 0
+
# always build with GCC as SUSE Security Team requires that
%define clang_build 0
@@ -72,7 +75,7 @@
%else
BuildRequires: gcc-c++
%endif
-BuildRequires: cargo >= 1.37
+BuildRequires: cargo >= 1.39
BuildRequires: libXcomposite-devel
BuildRequires: libcurl-devel
BuildRequires: libidl-devel
@@ -81,14 +84,14 @@
BuildRequires: libproxy-devel
BuildRequires: makeinfo
BuildRequires: mozilla-nspr-devel >= 4.24
-BuildRequires: mozilla-nss-devel >= 3.48
+BuildRequires: mozilla-nss-devel >= 3.49.2
BuildRequires: nasm >= 2.13
BuildRequires: nodejs8 >= 8.11
BuildRequires: python-devel
BuildRequires: python2-xml
BuildRequires: python3 >= 3.5
-BuildRequires: rust >= 1.37
-BuildRequires: rust-cbindgen >= 0.9.1
+BuildRequires: rust >= 1.39
+BuildRequires: rust-cbindgen >= 0.12.0
BuildRequires: startup-notification-devel
BuildRequires: unzip
BuildRequires: update-desktop-files
@@ -183,7 +186,6 @@
Patch20: mozilla-fix-top-level-asm.patch
Patch21: mozilla-bmo1504834-part4.patch
Patch22: mozilla-bmo849632.patch
-Patch23: mozilla-bmo1601707.patch
# Firefox/browser
Patch101: firefox-kde.patch
Patch102: firefox-branded-icons.patch
@@ -319,7 +321,6 @@
%patch20 -p1
%patch21 -p1
%patch22 -p1
-%patch23 -p1
# Firefox
%patch101 -p1
%patch102 -p1
@@ -399,7 +400,7 @@
ac_add_options --libdir=%{_libdir}
ac_add_options --includedir=%{_includedir}
ac_add_options --enable-release
-ac_add_options --enable-default-toolkit=cairo-gtk3
+ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
%if 0%{?suse_version} >= 1550
ac_add_options --disable-gconf
%endif
@@ -409,11 +410,12 @@
%else
ac_add_options --enable-debug-symbols
%endif
-%if 0%{?suse_version} > 1549
+# building with elf-hack started to fail everywhere with FF73
+#%if 0%{?suse_version} > 1549
%ifnarch aarch64 ppc64 ppc64le s390x
ac_add_options --disable-elf-hack
%endif
-%endif
+#%endif
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
%if %{localize}
@@ -576,10 +578,11 @@
#
mkdir -p %{buildroot}%{_datadir}/mozilla/extensions/%{firefox_appid}
mkdir -p %{buildroot}%{_libdir}/mozilla/extensions/%{firefox_appid}
-mkdir -p %{buildroot}/usr/share/pixmaps/
-ln -sf %{progdir}/browser/chrome/icons/default/default128.png %{buildroot}/usr/share/pixmaps/%{progname}.png
-ln -sf %{progdir}/browser/chrome/icons/default/default128.png %{buildroot}/usr/share/pixmaps/%{progname}-gnome.png
%if %branding
+# Install symbolic icon for GNOME
+mkdir -p %{buildroot}%{gnome_dir}/share/icons/hicolor/symbolic/apps/
+cp %{_builddir}/%{srcname}-%{orig_version}/browser/branding/official/content/identity-icons-brand.svg \
+ %{buildroot}%{gnome_dir}/share/icons/hicolor/symbolic/apps/%{progname}-symbolic.svg
for size in 16 22 24 32 48 64 128 256; do
%else
for size in 16 32 48; do
@@ -664,7 +667,6 @@
%{progdir}/browser/features/
%{progdir}/browser/chrome/icons
%{progdir}/browser/blocklist.xml
-%{progdir}/browser/chrome.manifest
%{progdir}/browser/omni.ja
%dir %{progdir}/distribution/
%{progdir}/distribution/extensions/
@@ -676,7 +678,6 @@
%{progdir}/%{progname}
%{progdir}/%{progname}-bin
%{progdir}/application.ini
-%{progdir}/chrome.manifest
%{progdir}/dependentlibs.list
%{progdir}/*.so
%{progdir}/omni.ja
@@ -693,7 +694,6 @@
%endif
%{_datadir}/applications/%{desktop_file_name}.desktop
%{_datadir}/mime/packages/%{progname}.xml
-%{_datadir}/pixmaps/firefox*
%dir %{_datadir}/mozilla
%dir %{_datadir}/mozilla/extensions
%dir %{_datadir}/mozilla/extensions/%{firefox_appid}
--- a/MozillaFirefox/mozilla-bmo1601707.patch Sun Feb 09 08:35:05 2020 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-../mozilla-bmo1601707.patch
\ No newline at end of file
--- a/MozillaFirefox/tar_stamps Sun Feb 09 08:35:05 2020 +0100
+++ b/MozillaFirefox/tar_stamps Wed Feb 19 22:51:20 2020 +0100
@@ -1,11 +1,11 @@
PRODUCT="firefox"
CHANNEL="release"
-VERSION="72.0.2"
+VERSION="73.0"
VERSION_SUFFIX=""
-PREV_VERSION="72.0.1"
+PREV_VERSION="73.0"
PREV_VERSION_SUFFIX=""
#SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation
RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-release"
-RELEASE_TAG="25e0edbb0a613c3bf794c93ba3aa0985d29d5ef4"
-RELEASE_TIMESTAMP="20200117190643"
+RELEASE_TAG="816e7f29478180f322fb4731df776d3b7854f0f8"
+RELEASE_TIMESTAMP="20200207195153"
--- a/firefox-kde.patch Sun Feb 09 08:35:05 2020 +0100
+++ b/firefox-kde.patch Wed Feb 19 22:51:20 2020 +0100
@@ -3,7 +3,7 @@
# Date 1559300151 -7200
# Fri May 31 12:55:51 2019 +0200
# Node ID 54d41b0033b8d649d842a1f862c6fed8b9874dec
-# Parent 4faaad3619f286bd6077754d8e59d339a5142b80
+# Parent 1143a0e4b2eefa83f74fc484c547d7790ca455a1
How to apply this patch:
1. Import and apply it
2. cp browser/base/content/browser.xul browser/base/content/browser-kde.xul
@@ -14,7 +14,7 @@
diff --git a/browser/components/preferences/in-content/main.js b/browser/components/preferences/in-content/main.js
--- a/browser/components/preferences/in-content/main.js
+++ b/browser/components/preferences/in-content/main.js
-@@ -341,16 +341,23 @@ var gMainPane = {
+@@ -329,16 +329,23 @@ var gMainPane = {
}, backoffTimes[this._backoffIndex + 1 < backoffTimes.length ? this._backoffIndex++ : backoffTimes.length - 1]);
};
@@ -38,7 +38,7 @@
);
let performanceSettingsUrl =
Services.urlFormatter.formatURLPref("app.support.baseURL") +
-@@ -1199,16 +1206,27 @@ var gMainPane = {
+@@ -1283,16 +1290,27 @@ var gMainPane = {
this._backoffIndex = 0;
let shellSvc = getShellService();
@@ -82,12 +82,12 @@
+ 'nsUnixShellService.cpp',
]
elif CONFIG['OS_ARCH'] == 'WINNT':
+ XPIDL_SOURCES += [
+ 'nsIWindowsShellService.idl',
+ ]
SOURCES += [
'nsWindowsShellService.cpp',
]
- LOCAL_INCLUDES += [
- '../../../other-licenses/nsis/Contrib/CityHash/cityhash',
- ]
diff --git a/browser/components/shell/nsKDEShellService.cpp b/browser/components/shell/nsKDEShellService.cpp
new file mode 100644
--- /dev/null
--- a/mozilla-bmo1504834-part1.patch Sun Feb 09 08:35:05 2020 +0100
+++ b/mozilla-bmo1504834-part1.patch Wed Feb 19 22:51:20 2020 +0100
@@ -1,11 +1,16 @@
# HG changeset patch
-# Parent 83da7ee18178639b2a89d5e21f78e190e4e72d7e
+# Parent 9db312f823881c04c5c16a7623df08cf6aef371d
Taken from https://bugzilla.mozilla.org/show_bug.cgi?id=1504834
-diff -r 83da7ee18178 gfx/2d/DrawTargetSkia.cpp
---- a/gfx/2d/DrawTargetSkia.cpp Mon Jul 22 00:00:00 2019 +0200
-+++ b/gfx/2d/DrawTargetSkia.cpp Wed Jan 08 12:17:44 2020 +0100
-@@ -136,8 +136,7 @@
+diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp
+--- a/gfx/2d/DrawTargetSkia.cpp
++++ b/gfx/2d/DrawTargetSkia.cpp
+@@ -131,18 +131,17 @@ static IntRect CalculateSurfaceBounds(co
+ Rect sampledBounds = inverse.TransformBounds(*aBounds);
+ if (!sampledBounds.ToIntRect(&bounds)) {
+ return surfaceBounds;
+ }
+
return surfaceBounds.Intersect(bounds);
}
@@ -15,17 +20,27 @@
static bool VerifyRGBXFormat(uint8_t* aData, const IntSize& aSize,
const int32_t aStride, SurfaceFormat aFormat) {
-diff -r 83da7ee18178 gfx/2d/Types.h
---- a/gfx/2d/Types.h Mon Jul 22 00:00:00 2019 +0200
-+++ b/gfx/2d/Types.h Wed Jan 08 12:17:44 2020 +0100
-@@ -86,15 +86,8 @@
+ if (aFormat != SurfaceFormat::B8G8R8X8 || aSize.IsEmpty()) {
+ return true;
+ }
+ // We should've initialized the data to be opaque already
+ // On debug builds, verify that this is actually true.
+diff --git a/gfx/2d/Types.h b/gfx/2d/Types.h
+--- a/gfx/2d/Types.h
++++ b/gfx/2d/Types.h
+@@ -82,25 +82,18 @@ enum class SurfaceFormat : int8_t {
+ Depth,
+
+ // This represents the unknown format.
+ UNKNOWN,
+
// The following values are endian-independent synonyms. The _UINT32 suffix
// indicates that the name reflects the layout when viewed as a uint32_t
// value.
--#if MOZ_LITTLE_ENDIAN
+-#if MOZ_LITTLE_ENDIAN()
A8R8G8B8_UINT32 = B8G8R8A8, // 0xAARRGGBB
X8R8G8B8_UINT32 = B8G8R8X8, // 0x00RRGGBB
--#elif MOZ_BIG_ENDIAN
+-#elif MOZ_BIG_ENDIAN()
- A8R8G8B8_UINT32 = A8R8G8B8, // 0xAARRGGBB
- X8R8G8B8_UINT32 = X8R8G8B8, // 0x00RRGGBB
-#else
@@ -34,10 +49,20 @@
// The following values are OS and endian-independent synonyms.
//
-diff -r 83da7ee18178 gfx/skia/skia/third_party/skcms/skcms.cc
---- a/gfx/skia/skia/third_party/skcms/skcms.cc Mon Jul 22 00:00:00 2019 +0200
-+++ b/gfx/skia/skia/third_party/skcms/skcms.cc Wed Jan 08 12:17:44 2020 +0100
-@@ -30,6 +30,8 @@
+ // TODO(aosmond): When everything blocking bug 1581828 has been resolved, we
+ // can make this use R8B8G8A8 and R8B8G8X8 for non-Windows platforms.
+ OS_RGBA = A8R8G8B8_UINT32,
+ OS_RGBX = X8R8G8B8_UINT32
+ };
+diff --git a/gfx/skia/skia/third_party/skcms/skcms.cc b/gfx/skia/skia/third_party/skcms/skcms.cc
+--- a/gfx/skia/skia/third_party/skcms/skcms.cc
++++ b/gfx/skia/skia/third_party/skcms/skcms.cc
+@@ -25,16 +25,18 @@
+ // it'd be a lot slower. But we want all those headers included so we
+ // can use their features after runtime checks later.
+ #include <smmintrin.h>
+ #include <avxintrin.h>
+ #include <avx2intrin.h>
#include <avx512fintrin.h>
#include <avx512dqintrin.h>
#endif
@@ -46,7 +71,17 @@
#endif
// sizeof(x) will return size_t, which is 32-bit on some machines and 64-bit on others.
-@@ -280,20 +282,28 @@
+ // We have better testing on 64-bit machines, so force 32-bit machines to behave like 64-bit.
+ //
+ // Please do not use sizeof() directly, and size_t only when required.
+ // (We have no way of enforcing these requests...)
+ #define SAFE_SIZEOF(x) ((uint64_t)sizeof(x))
+@@ -275,30 +277,38 @@ enum {
+ skcms_Signature_sf32 = 0x73663332,
+ // XYZ is also a PCS signature, so it's defined in skcms.h
+ // skcms_Signature_XYZ = 0x58595A20,
+ };
+
static uint16_t read_big_u16(const uint8_t* ptr) {
uint16_t be;
memcpy(&be, ptr, sizeof(be));
@@ -79,3 +114,8 @@
#endif
}
+ static int32_t read_big_i32(const uint8_t* ptr) {
+ return (int32_t)read_big_u32(ptr);
+ }
+
+ static float read_big_fixed(const uint8_t* ptr) {
--- a/mozilla-bmo1601707.patch Sun Feb 09 08:35:05 2020 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,75 +0,0 @@
-# HG changeset patch
-# Parent 862430a659a4f1fcbbbbfcf1cba98eb7e31035dc
-
-diff --git a/dom/indexedDB/ActorsParent.cpp b/dom/indexedDB/ActorsParent.cpp
---- a/dom/indexedDB/ActorsParent.cpp
-+++ b/dom/indexedDB/ActorsParent.cpp
-@@ -24612,19 +24612,19 @@ nsresult ObjectStoreAddOrPutRequestOp::D
- }
- }
-
- // The "|| keyUnset" here is mostly a debugging tool. If a key isn't
- // specified we should never have a collision and so it shouldn't matter
- // if we allow overwrite or not. By not allowing overwrite we raise
- // detectable errors rather than corrupting data.
- DatabaseConnection::CachedStatement stmt;
-- const auto& optReplaceDirective = (!mOverwrite || keyUnset)
-- ? NS_LITERAL_CSTRING("")
-- : NS_LITERAL_CSTRING("OR REPLACE ");
-+ const auto optReplaceDirective = (!mOverwrite || keyUnset)
-+ ? NS_LITERAL_CSTRING("")
-+ : NS_LITERAL_CSTRING("OR REPLACE ");
- rv = aConnection->GetCachedStatement(
- NS_LITERAL_CSTRING("INSERT ") + optReplaceDirective +
- NS_LITERAL_CSTRING("INTO object_data "
- "(object_store_id, key, file_ids, data) "
- "VALUES (:") +
- kStmtParamNameObjectStoreId + NS_LITERAL_CSTRING(", :") +
- kStmtParamNameKey + NS_LITERAL_CSTRING(", :") +
- kStmtParamNameFileIds + NS_LITERAL_CSTRING(", :") +
-@@ -26452,19 +26452,19 @@ nsresult Cursor::OpenOp::DoIndexDatabase
- MOZ_ASSERT(mCursor->mType == OpenCursorParams::TIndexOpenCursorParams);
- MOZ_ASSERT(mCursor->mObjectStoreId);
- MOZ_ASSERT(mCursor->mIndexId);
-
- AUTO_PROFILER_LABEL("Cursor::OpenOp::DoIndexDatabaseWork", DOM);
-
- const bool usingKeyRange = mOptionalKeyRange.isSome();
-
-- const auto& indexTable = mCursor->mUniqueIndex
-- ? NS_LITERAL_CSTRING("unique_index_data")
-- : NS_LITERAL_CSTRING("index_data");
-+ const auto indexTable = mCursor->mUniqueIndex
-+ ? NS_LITERAL_CSTRING("unique_index_data")
-+ : NS_LITERAL_CSTRING("index_data");
-
- // The result of MakeColumnPairSelectionList is stored in a local variable,
- // since inlining it into the next statement causes a crash on some Mac OS X
- // builds (see https://bugzilla.mozilla.org/show_bug.cgi?id=1168606#c110).
- const auto columnPairSelectionList = MakeColumnPairSelectionList(
- NS_LITERAL_CSTRING("index_table.value"),
- NS_LITERAL_CSTRING("index_table.value_locale"), kColumnNameAliasSortKey,
- mCursor->IsLocaleAware());
-@@ -26558,19 +26558,19 @@ nsresult Cursor::OpenOp::DoIndexKeyDatab
- MOZ_ASSERT(mCursor->mType == OpenCursorParams::TIndexOpenKeyCursorParams);
- MOZ_ASSERT(mCursor->mObjectStoreId);
- MOZ_ASSERT(mCursor->mIndexId);
-
- AUTO_PROFILER_LABEL("Cursor::OpenOp::DoIndexKeyDatabaseWork", DOM);
-
- const bool usingKeyRange = mOptionalKeyRange.isSome();
-
-- const auto& table = mCursor->mUniqueIndex
-- ? NS_LITERAL_CSTRING("unique_index_data")
-- : NS_LITERAL_CSTRING("index_data");
-+ const auto table = mCursor->mUniqueIndex
-+ ? NS_LITERAL_CSTRING("unique_index_data")
-+ : NS_LITERAL_CSTRING("index_data");
-
- // The result of MakeColumnPairSelectionList is stored in a local variable,
- // since inlining it into the next statement causes a crash on some Mac OS X
- // builds (see https://bugzilla.mozilla.org/show_bug.cgi?id=1168606#c110).
- const auto columnPairSelectionList = MakeColumnPairSelectionList(
- NS_LITERAL_CSTRING("value"), NS_LITERAL_CSTRING("value_locale"),
- kColumnNameAliasSortKey, mCursor->IsLocaleAware());
- const nsCString sortColumnAlias = NS_LITERAL_CSTRING("SELECT ") +
--- a/mozilla-kde.patch Sun Feb 09 08:35:05 2020 +0100
+++ b/mozilla-kde.patch Wed Feb 19 22:51:20 2020 +0100
@@ -3,7 +3,7 @@
# Date 1559294891 -7200
# Fri May 31 11:28:11 2019 +0200
# Node ID c2aa7198fb925e7fde96abf65b6f68b9b755f112
-# Parent 52a515e07938d75f7c33e7b724845ce6dc315c0c
+# Parent 48866e4a200fb5299b94af4d9841e38336cff9f4
Description: Add KDE integration to Firefox (toolkit parts)
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
Author: Lubos Lunak <lunak@suse.com>
@@ -13,7 +13,7 @@
diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
--- a/modules/libpref/Preferences.cpp
+++ b/modules/libpref/Preferences.cpp
-@@ -88,16 +88,17 @@
+@@ -84,16 +84,17 @@
#include "nsXPCOM.h"
#include "nsXULAppAPI.h"
#include "nsZipArchive.h"
@@ -31,7 +31,7 @@
#ifdef MOZ_MEMORY
# include "mozmemory.h"
#endif
-@@ -4543,25 +4544,37 @@ nsresult Preferences::InitInitialObjects
+@@ -4539,25 +4540,37 @@ nsresult Preferences::InitInitialObjects
// application pref files for backwards compatibility.
static const char* specialFiles[] = {
#if defined(XP_MACOSX)
@@ -69,7 +69,7 @@
// Load jar:$app/omni.jar!/defaults/preferences/*.js
// or jar:$gre/omni.jar!/defaults/preferences/*.js.
-@@ -4607,17 +4620,17 @@ nsresult Preferences::InitInitialObjects
+@@ -4603,17 +4616,17 @@ nsresult Preferences::InitInitialObjects
}
nsCOMPtr<nsIFile> path = do_QueryInterface(elem);
@@ -136,7 +136,7 @@
diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpack/chrome/manifest.py
--- a/python/mozbuild/mozpack/chrome/manifest.py
+++ b/python/mozbuild/mozpack/chrome/manifest.py
-@@ -36,16 +36,17 @@ class ManifestEntry(object):
+@@ -37,16 +37,17 @@ class ManifestEntry(object):
'platformversion',
'os',
'osversion',
@@ -175,7 +175,7 @@
diff --git a/toolkit/mozapps/downloads/HelperAppDlg.jsm b/toolkit/mozapps/downloads/HelperAppDlg.jsm
--- a/toolkit/mozapps/downloads/HelperAppDlg.jsm
+++ b/toolkit/mozapps/downloads/HelperAppDlg.jsm
-@@ -1199,36 +1199,66 @@ nsUnknownContentTypeDialog.prototype = {
+@@ -1195,36 +1195,66 @@ nsUnknownContentTypeDialog.prototype = {
params.handlerApp &&
params.handlerApp.executable &&
params.handlerApp.executable.isFile()
@@ -265,7 +265,7 @@
diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
--- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
+++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
-@@ -14,16 +14,17 @@
+@@ -13,16 +13,17 @@
#include "nsPrintfCString.h"
#include "nsNetCID.h"
#include "nsNetUtil.h"
@@ -283,7 +283,7 @@
NS_DECL_ISUPPORTS
NS_DECL_NSISYSTEMPROXYSETTINGS
-@@ -37,16 +38,18 @@ class nsUnixSystemProxySettings final :
+@@ -36,16 +37,18 @@ class nsUnixSystemProxySettings final :
nsCOMPtr<nsIGSettingsCollection> mProxySettings;
nsInterfaceHashtable<nsCStringHashKey, nsIGSettingsCollection>
mSchemeProxySettings;
@@ -302,7 +302,7 @@
nsUnixSystemProxySettings::GetMainThreadOnly(bool* aMainThreadOnly) {
// dbus prevents us from being threadsafe, but this routine should not block
// anyhow
-@@ -381,21 +384,50 @@ nsresult nsUnixSystemProxySettings::GetP
+@@ -380,21 +383,50 @@ nsresult nsUnixSystemProxySettings::GetP
return NS_OK;
}
@@ -356,7 +356,7 @@
diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build
--- a/toolkit/xre/moz.build
+++ b/toolkit/xre/moz.build
-@@ -87,17 +87,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
+@@ -88,17 +88,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
'../components/printingui',
]
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
@@ -1213,10 +1213,10 @@
#include "nsString.h"
#include "nsReadableUtils.h"
#include "nsUnicharUtils.h"
- #include "nsIURL.h"
#include "nsIFileStreams.h"
#include "nsILineInputStream.h"
-@@ -1025,17 +1025,17 @@ nsresult nsOSHelperAppService::GetHandle
+ #include "nsIFile.h"
+@@ -1024,17 +1024,17 @@ nsresult nsOSHelperAppService::GetHandle
nsresult nsOSHelperAppService::OSProtocolHandlerExists(
const char* aProtocolScheme, bool* aHandlerExists) {
@@ -1235,7 +1235,7 @@
nsCOMPtr<nsIHandlerService> handlerSvc =
do_GetService(NS_HANDLERSERVICE_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv) && handlerSvc) {
-@@ -1045,17 +1045,17 @@ nsresult nsOSHelperAppService::OSProtoco
+@@ -1044,17 +1044,17 @@ nsresult nsOSHelperAppService::OSProtoco
}
return rv;
@@ -1254,7 +1254,7 @@
NS_IMETHODIMP nsOSHelperAppService::IsCurrentAppOSDefaultForProtocol(
const nsACString& aScheme, bool* _retval) {
-@@ -1142,17 +1142,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel
+@@ -1141,17 +1141,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel
nsresult rv =
LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt), majorType,
minorType, mime_types_description, true);
@@ -1273,7 +1273,7 @@
rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt), majorType,
minorType, mime_types_description, false);
-@@ -1254,17 +1254,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel
+@@ -1253,17 +1253,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel
// Now look up our extensions
nsAutoString extensions, mime_types_description;
@@ -1295,7 +1295,7 @@
diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build
--- a/widget/gtk/moz.build
+++ b/widget/gtk/moz.build
-@@ -127,16 +127,17 @@ include('/ipc/chromium/chromium-config.m
+@@ -128,16 +128,17 @@ include('/ipc/chromium/chromium-config.m
FINAL_LIBRARY = 'xul'
@@ -1316,25 +1316,24 @@
diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
--- a/widget/gtk/nsFilePicker.cpp
+++ b/widget/gtk/nsFilePicker.cpp
-@@ -4,16 +4,17 @@
+@@ -1,15 +1,16 @@
+ /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+ /* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- #include "mozilla/Types.h"
+ #include <dlfcn.h>
+ #include <gtk/gtk.h>
++#include <gdk/gdkx.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
- #include <gtk/gtk.h>
-+#include <gdk/gdkx.h>
-
+ #include "mozilla/Types.h"
#include "nsGtkUtils.h"
#include "nsIFileURL.h"
#include "nsIGIOService.h"
- #include "nsIURI.h"
- #include "nsIWidget.h"
- #include "nsIFile.h"
- #include "nsIStringBundle.h"
-@@ -21,16 +22,17 @@
+@@ -20,16 +21,17 @@
#include "nsArrayEnumerator.h"
#include "nsMemory.h"
#include "nsEnumeratorUtils.h"
@@ -1352,7 +1351,7 @@
#define MAX_PREVIEW_SOURCE_SIZE 4096
nsIFile* nsFilePicker::mPrevDisplayDirectory = nullptr;
-@@ -228,17 +230,19 @@ nsFilePicker::AppendFilters(int32_t aFil
+@@ -227,17 +229,19 @@ nsFilePicker::AppendFilters(int32_t aFil
mAllowURLs = !!(aFilterMask & filterAllowURLs);
return nsBaseFilePicker::AppendFilters(aFilterMask);
}
@@ -1373,7 +1372,7 @@
mFilters.AppendElement(filter);
mFilterNames.AppendElement(name);
-@@ -338,16 +342,39 @@ nsresult nsFilePicker::Show(int16_t* aRe
+@@ -337,16 +341,39 @@ nsresult nsFilePicker::Show(int16_t* aRe
return NS_OK;
}
@@ -1413,7 +1412,7 @@
GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
-@@ -573,16 +600,240 @@ void nsFilePicker::Done(void* file_choos
+@@ -572,16 +599,240 @@ void nsFilePicker::Done(void* file_choos
mCallback->Done(result);
mCallback = nullptr;
} else {
@@ -1835,7 +1834,7 @@
diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
--- a/xpcom/io/nsLocalFileUnix.cpp
+++ b/xpcom/io/nsLocalFileUnix.cpp
-@@ -47,16 +47,17 @@
+@@ -46,16 +46,17 @@
#include "prproces.h"
#include "nsIDirectoryEnumerator.h"
#include "nsSimpleEnumerator.h"
@@ -1853,7 +1852,7 @@
# include "prmem.h"
# include "plbase64.h"
-@@ -1902,62 +1903,77 @@ nsLocalFile::SetPersistentDescriptor(con
+@@ -1904,62 +1905,77 @@ nsLocalFile::SetPersistentDescriptor(con
NS_IMETHODIMP
nsLocalFile::Reveal() {
--- a/series Sun Feb 09 08:35:05 2020 +0100
+++ b/series Wed Feb 19 22:51:20 2020 +0100
@@ -21,7 +21,6 @@
mozilla-fix-top-level-asm.patch
mozilla-bmo1504834-part4.patch
mozilla-bmo849632.patch
-mozilla-bmo1601707.patch
# Firefox patches
firefox-kde.patch