1
0

Accepting request 686793 from mozilla:Factory

- Mozilla Firefox 66.0
  * Increased content processes to 8
  * Added capability to search through open tabs from the tab overflow menu
  * New backend for the storage.local WebExtensions API, providing
    I/O performance improvements when the extension updates a small
    subset of the stored data
  * WebExtension keyboard shortcuts can now be managed or overridden
    from about:addons
  * Improved scrolling behavior: Firefox will now attempt to keep content
    from jumping around while a page is loading by supporting scroll
    anchoring
  * New about:privatebrowsing with search
  * A certificate error page now notifies the user of the name of the
    certificate issuer that breaks HTTPs connections on intercepted
    connections to help troubleshooting possible anti-virus software
    issues.
  * Fixed an performance issue some Linux users experienced with the
    Downloads panel (bmo#1517101)
  * Firefox now blocks all autoplay media with sound by default. Users
    can add individual sites to an exceptions list or turn the blocking
    off.
  * System title bar is hidden by default to match Gnome guideline
  MFSA 2019-07 (bsc#1129821)
  * CVE-2019-9790 (bmo#1525145)
    Use-after-free when removing in-use DOM elements
  * CVE-2019-9791 (bmo#1530958)
    Type inference is incorrect for constructors entered through on-stack
    replacement with IonMonkey
  * CVE-2019-9792 (bmo#1532599)
    IonMonkey leaks JS_OPTIMIZED_OUT magic value to script

OBS-URL: https://build.opensuse.org/request/show/686793
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/MozillaFirefox?expand=0&rev=284
This commit is contained in:
Dominique Leuenberger 2019-03-27 15:12:40 +00:00 committed by Git OBS Bridge
commit a2b5856fee
15 changed files with 251 additions and 197 deletions

View File

@ -1,3 +1,83 @@
-------------------------------------------------------------------
Sun Mar 17 10:08:51 UTC 2019 - Wolfgang Rosenauer <wr@rosenauer.org>
- Mozilla Firefox 66.0
* Increased content processes to 8
* Added capability to search through open tabs from the tab overflow menu
* New backend for the storage.local WebExtensions API, providing
I/O performance improvements when the extension updates a small
subset of the stored data
* WebExtension keyboard shortcuts can now be managed or overridden
from about:addons
* Improved scrolling behavior: Firefox will now attempt to keep content
from jumping around while a page is loading by supporting scroll
anchoring
* New about:privatebrowsing with search
* A certificate error page now notifies the user of the name of the
certificate issuer that breaks HTTPs connections on intercepted
connections to help troubleshooting possible anti-virus software
issues.
* Fixed an performance issue some Linux users experienced with the
Downloads panel (bmo#1517101)
* Firefox now blocks all autoplay media with sound by default. Users
can add individual sites to an exceptions list or turn the blocking
off.
* System title bar is hidden by default to match Gnome guideline
MFSA 2019-07 (bsc#1129821)
* CVE-2019-9790 (bmo#1525145)
Use-after-free when removing in-use DOM elements
* CVE-2019-9791 (bmo#1530958)
Type inference is incorrect for constructors entered through on-stack
replacement with IonMonkey
* CVE-2019-9792 (bmo#1532599)
IonMonkey leaks JS_OPTIMIZED_OUT magic value to script
* CVE-2019-9793 (bmo#1528829)
Improper bounds checks when Spectre mitigations are disabled
* CVE-2019-9794 (bmo#1530103) (Windows only)
Command line arguments not discarded during execution
* CVE-2019-9795 (bmo#1514682)
Type-confusion in IonMonkey JIT compiler
* CVE-2019-9796 (bmo#1531277)
Use-after-free with SMIL animation controller
* CVE-2019-9797 (bmo#1528909)
Cross-origin theft of images with createImageBitmap
* CVE-2019-9798 (bmo#1527534) (Android only)
Library is loaded from world writable APITRACE_LIB location
* CVE-2019-9799 (bmo#1505678)
Information disclosure via IPC channel messages
* CVE-2019-9801 (bmo#1527717) (Windows only)
Windows programs that are not 'URL Handlers' are exposed to web content
* CVE-2019-9802 (bmo#1415508)
Chrome process information leak
* CVE-2019-9803 (bmo#1515863, bmo#1437009)
Upgrade-Insecure-Requests incorrectly enforced for same-origin navigation
* CVE-2019-9804 (bmo#1518026) (MacOS only)
Code execution through 'Copy as cURL' in Firefox Developer Tools on macOS
* CVE-2019-9805 (bmo#1521360)
Potential use of uninitialized memory in Prio
* CVE-2019-9806 (bmo#1525267)
Denial of service through successive FTP authorization prompts
* CVE-2019-9807 (bmo#1362050)
Text sent through FTP connection can be incorporated into alert messages
* CVE-2019-9809 (bmo#1282430, bmo#1523249)
Denial of service through FTP modal alert error messages
* CVE-2019-9808 (bmo#1434634)
WebRTC permissions can display incorrect origin with data: and blob: URLs
* CVE-2019-9789 bmo#1520483, bmo#1522987, bmo#1528199, bmo#1519337,
bmo#1525549, bmo#1516179, bmo#1518524, bmo#1518331, bmo#1526579,
bmo#1512567, bmo#1524335, bmo#1448505, bmo#1518821
Memory safety bugs fixed in Firefox 66
* CVE-2019-9788 bmo#1518001, bmo#1521304, bmo#1521214, bmo#1506665,
bmo#1516834, bmo#1518774, bmo#1524755, bmo#1523362, bmo#1524214, bmo#1529203
Memory safety bugs fixed in Firefox 66 and Firefox ESR 60.6
- updated build/runtime requirements
* mozilla-nss >= 3.42.1
* cargo/rust >= 1.31
* rust-cbindgen >= 0.6.8
* nasm >= 2.13 (new)
- removed obsolete patch
* mozilla-bmo256180.patch
-------------------------------------------------------------------
Tue Mar 5 10:17:01 UTC 2019 - Stephan Kulow <coolo@suse.com>

View File

@ -18,13 +18,13 @@
# changed with every update
%define major 65
%define mainver %major.0.1
%define orig_version 65.0.1
%define major 66
%define mainver %major.0
%define orig_version 66.0
%define orig_suffix %{nil}
%define update_channel release
%define branding 1
%define releasedate 20190211233335
%define releasedate 20190314174725
%define source_prefix firefox-%{orig_version}
# always build with GCC as SUSE Security Team requires that
@ -69,7 +69,7 @@ BuildRequires: gcc7-c++
%else
BuildRequires: gcc-c++
%endif
BuildRequires: cargo >= 1.30
BuildRequires: cargo >= 1.31
BuildRequires: libXcomposite-devel
BuildRequires: libcurl-devel
BuildRequires: libidl-devel
@ -78,13 +78,14 @@ BuildRequires: libnotify-devel
BuildRequires: libproxy-devel
BuildRequires: makeinfo
BuildRequires: mozilla-nspr-devel >= 4.20
BuildRequires: mozilla-nss-devel >= 3.41
BuildRequires: mozilla-nss-devel >= 3.42.1
BuildRequires: nasm >= 2.13
BuildRequires: nodejs >= 8.11
BuildRequires: python-devel
BuildRequires: python2-xml
BuildRequires: python3 >= 3.5
BuildRequires: rust >= 1.30
BuildRequires: rust-cbindgen >= 0.6.7
BuildRequires: rust >= 1.31
BuildRequires: rust-cbindgen >= 0.6.8
BuildRequires: startup-notification-devel
BuildRequires: unzip
BuildRequires: update-desktop-files
@ -160,7 +161,6 @@ Patch2: mozilla-kde.patch
Patch3: mozilla-ntlm-full-path.patch
Patch4: mozilla-openaes-decl.patch
Patch7: mozilla-aarch64-startup-crash.patch
Patch8: mozilla-bmo256180.patch
Patch9: mozilla-bmo1463035.patch
Patch10: mozilla-cubeb-noreturn.patch
# Firefox/browser
@ -267,7 +267,6 @@ cd $RPM_BUILD_DIR/%{source_prefix}
%patch3 -p1
%patch4 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
# Firefox
@ -359,7 +358,8 @@ ac_add_options --enable-startup-notification
#ac_add_options --enable-chrome-format=jar
ac_add_options --enable-update-channel=%{update_channel}
ac_add_options --with-mozilla-api-keyfile=%{SOURCE18}
ac_add_options --with-google-api-keyfile=%{SOURCE19}
ac_add_options --with-google-location-service-api-keyfile=%{SOURCE19}
ac_add_options --with-google-safebrowsing-api-keyfile=%{SOURCE19}
ac_add_options --with-unsigned-addon-scopes=app
%if %branding
ac_add_options --enable-official-branding

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3d6e6d872570a25ef1c79b4ceac28b3199321c3606e5c3c115e435d3cce92608
size 28372
oid sha256:0d8caf841081c71595005496010130f394420abb1597d461a1a5ef4e53f9ec0c
size 28392

View File

@ -7,8 +7,8 @@
CHANNEL="release"
BRANCH="releases/mozilla-$CHANNEL"
RELEASE_TAG="1ea7b51ef5bb91bdc34fb7406fd4d35ed7961363"
VERSION="65.0.1"
RELEASE_TAG="164a57c0cdf0088e786e6b966e34fdd3799671d1"
VERSION="66.0"
VERSION_SUFFIX=""
LOCALE_FILE="firefox-$VERSION/browser/locales/l10n-changesets.json"

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:67e517f6d1ea8aa5c8f32404b8756f3205c3550917a91a19b0a0edccc656a3cc
size 276816148

View File

@ -1,17 +0,0 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
iQIcBAABCAAGBQJcYimSAAoJELu+vbskxvNV7jMQALO4YSnT/C6p5G83WEKN79oo
/KTibnBddU6zUScHbnZDvISV8f38nuOhPo8EdmeDS24vMUzP8SvUJHRjU0q0Oei4
9sNrP7kL7gKiO92QVmnidh6xv9zrHsF7YzzcDwoRKDuoYjU2prr9LRcnh0OKTrON
U1dWIEkiDkhV+RzbFhog3IsFspA+5Xx2FUefUKb2R8IoxiE5NqrwhvpM5CbbVScH
6xbi//ei5yVypxSv99RD+qfk/hYGxhgzWJB2DVaNPrRjrOStDFf4Hil8Uwl3cKU+
4AXTfo5xWmw6mXWp3usSrss3IRBGK1z8dYf2UyZhZaMcCV7sUy6sWKKrXyYqxR+P
E5Ylir6GOPNvYys1zaEkeodQo+nBt/U446514ZYaCp7Zvl9W2r2OGtQ1VTO0It9y
+dkNbxECUrM5T7Oiv3CG0e+BIRuX8pMSqWzAC7/Yl5Hxqkp9XQLx1P3dcKoKusw5
OX0pUYtoAiM+sepPuurUc+UqpswLwdJx/XwR46icyz8oQoINSoyIvIAm5Lufx82M
bHY1CejdEb2Sgge8mzr2vn0T7Fs+9B9VmBAnyOZrXNv4/rdee1MtBvDXwfL0dhxg
w4Hl2L7y1aWJicNagK4B1GpaWCBcRteVzrkIEzk+/JqCiM+vB2IGXqLxnxcgi4OJ
toHbIuS/oYjU7UAj+hUI
=tFO8
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c37b253294826b6d14864dc38342edd5b174e76a272a7e5dbaca007eb2cac7b0
size 281516416

View File

@ -0,0 +1,17 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
iQIcBAABCAAGBQJcitNSAAoJELu+vbskxvNVvXkP/3rShiOGBcBZTf/pFHVbv6ZH
BqVjaFusWpnyz3DvFkSyVLOgqW0lSytL66SYP0xqCIvngmiT8xNTX4Z8gX7F77xw
W0yYdH7trNbB4otHD7fzWiP2qV+d1Un8PsJHyOayPFM6Vccg0IXkrD0t7fgtZSLq
zN2ahURRVLXMHouE7bQKFL6X3DLf2R0Rk4sCOn/q0K/ENoXdVLNLcpELzAQLxboZ
yRPDv2fv/+bBxdgxbeT2i2beyuKw6iZ2VmlOhr92Qt92XHw533j5Cd3meWxzDK0l
Sk4PYZBn4D1y9yb2OHzONNQMlyThy+sLKp5pRf3FcTSbVxoI9Tr4vg/s1pbzhN/F
Mjd8kMZMPvUyeT4t3WOEyF+lHPmgcMXLYSdisPV1dNo7x53LNp0+avur29x9Ljtb
+U4s9S5/Oz5TXvxW3Lkyikw7hGkB82QxS3/TmxSthgx1Gz046uUY9eRd1wQlQKeX
v6PKmXGnYSwoT6qBX6ohA2LXHPseQ6tRc0EkRH36NlugjuVNPCU03BF/9xSw55Dq
EFH/KefH3X7KbUWqHUBeg1Q/74FLTHSUfpDZ45CfczciL7HRCWXbkLVPeP2I2SR2
hyhUQ4i8ya+uZ3tS6LyMu3J3LCQCTYV3sNq0phub6su4yqXslDSns4uz6+LOHwNk
zTZRJb/k/lDBBCzb2l7f
=NjX9
-----END PGP SIGNATURE-----

View File

@ -1,11 +1,11 @@
# HG changeset patch
# Parent 693f0baece29cc958a7d91b89fd12e3b89a502e3
# Parent 87262204aa945e6fce864193d103a93659bf76f6
diff --git a/browser/base/content/browser-kde.xul b/browser/base/content/browser-kde.xul
new file mode 100644
--- /dev/null
+++ b/browser/base/content/browser-kde.xul
@@ -0,0 +1,1395 @@
@@ -0,0 +1,1408 @@
+#filter substitution
+<?xml version="1.0"?>
+# -*- Mode: HTML -*-
@ -276,6 +276,8 @@ new file mode 100644
+ noautofocus="true"
+ hidden="true"
+ flip="none"
+ consumeoutsideclicks="never"
+ norolluponanchor="true"
+ level="parent">
+ <html:div class="urlbarView-body-outer">
+ <html:div class="urlbarView-body-inner">
@ -579,6 +581,7 @@ new file mode 100644
+ position="bottomcenter topright"
+ tabspecific="true"
+ noautofocus="true"
+ pocket-title="&saveToPocketCmd.label;"
+ copyURL-title="&pageAction.copyLink.label;"
+ emailLink-title="&emailPageCmd.label;"
+ sendToDevice-notReadyTitle="&sendToDevice.syncNotReady.label;"
@ -771,13 +774,11 @@ new file mode 100644
+ aria-label="&tabsToolbar.label;"
+ context="toolbar-context-menu"
+ flex="1">
+ <vbox flex="1" class="toolbar-items">
+ <spacer flex="1000"/>
+
+ <hbox class="titlebar-spacer" type="pre-tabs"/>
+
+ <hbox flex="1" align="end" class="toolbar-items">
+ <hbox id="TabsToolbar-customization-target" flex="1">
+ <hbox class="titlebar-spacer" type="pre-tabs"
+ skipintoolbarset="true"/>
+
+ <tabs id="tabbrowser-tabs"
+ flex="1"
+ setfocus="false"
@ -805,19 +806,15 @@ new file mode 100644
+ label="&listAllTabs.label;"
+ tooltiptext="&listAllTabs.label;"
+ removable="false"/>
+
+ <hbox class="titlebar-spacer" type="post-tabs"
+ ordinal="1000"
+ skipintoolbarset="true"/>
+ </hbox>
+ </vbox>
+ </hbox>
+
+ <hbox class="titlebar-spacer" type="post-tabs"/>
+
+#ifndef XP_MACOSX
+ <button class="accessibility-indicator" tooltiptext="&accessibilityIndicator.tooltip;"
+ ordinal="1000"
+ aria-live="polite" skipintoolbarset="true"/>
+ <hbox class="private-browsing-indicator" skipintoolbarset="true"
+ ordinal="1000"/>
+ aria-live="polite"/>
+ <hbox class="private-browsing-indicator"/>
+#endif
+
+#include titlebar-items.inc.xul
@ -1045,7 +1042,22 @@ new file mode 100644
+ class="urlbar-icon urlbar-page-action"
+ role="button"
+ tooltiptext="&pageActionButton.tooltip;"
+ onmousedown="BrowserPageActions.mainButtonClicked(event);"/>
+ onmousedown="BrowserPageActions.mainButtonClicked(event);"
+ onkeypress="BrowserPageActions.mainButtonClicked(event);"/>
+ <hbox id="pocket-button-box"
+ hidden="true"
+ class="urlbar-icon-wrapper urlbar-page-action"
+ onclick="BrowserPageActions.doCommandForAction(PageActions.actionForID('pocket'), event, this);">
+ <image id="pocket-button"
+ class="urlbar-icon"
+ tooltiptext="&pocketButton.tooltiptext;"
+ role="button"/>
+ <hbox id="pocket-button-animatable-box">
+ <image id="pocket-button-animatable-image"
+ tooltiptext="&pocketButton.tooltiptext;"
+ role="presentation"/>
+ </hbox>
+ </hbox>
+ <hbox id="star-button-box"
+ hidden="true"
+ class="urlbar-icon-wrapper urlbar-page-action"
@ -1097,6 +1109,7 @@ new file mode 100644
+ <toolbarbutton id="library-button" class="toolbarbutton-1 chromeclass-toolbar-additional subviewbutton-nav"
+ removable="true"
+ onmousedown="PanelUI.showSubView('appMenu-libraryView', this, event);"
+ onkeypress="PanelUI.showSubView('appMenu-libraryView', this, event);"
+ closemenu="none"
+ cui-areatype="toolbar"
+ tooltiptext="&libraryButton.tooltip;"
@ -1431,21 +1444,21 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns
#include "DirectoryProvider.h"
#if defined(XP_WIN)
#include "nsWindowsShellService.h"
# include "nsWindowsShellService.h"
#elif defined(XP_MACOSX)
#include "nsMacShellService.h"
# include "nsMacShellService.h"
#elif defined(MOZ_WIDGET_GTK)
-#include "nsGNOMEShellService.h"
+#include "nsUnixShellService.h"
-# include "nsGNOMEShellService.h"
+# include "nsUnixShellService.h"
#endif
#include "nsIToolkitShellService.h"
#if defined(MOZ_WIDGET_COCOA)
#include "nsMacAttribution.h"
# include "nsMacAttribution.h"
#endif
#if defined(XP_WIN)
#include "nsIEHistoryEnumerator.h"
@@ -33,18 +33,16 @@ using namespace mozilla::browser;
@@ -34,18 +34,16 @@ using namespace mozilla::browser;
/////////////////////////////////////////////////////////////////////////////
@ -1464,7 +1477,7 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns
#if defined(XP_WIN)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsIEHistoryEnumerator)
@@ -67,17 +65,17 @@ NS_DEFINE_NAMED_CID(NS_MACATTRIBUTIONSER
@@ -64,17 +62,17 @@ NS_DEFINE_NAMED_CID(NS_MACATTRIBUTIONSER
#endif
static const mozilla::Module::CIDEntry kBrowserCIDs[] = {
@ -1475,12 +1488,12 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns
#elif defined(MOZ_WIDGET_GTK)
- { &kNS_SHELLSERVICE_CID, false, nullptr, nsGNOMEShellServiceConstructor },
+ { &kNS_SHELLSERVICE_CID, false, nullptr, nsUnixShellServiceConstructor },
#elif defined(XP_MACOSX)
{ &kNS_SHELLSERVICE_CID, false, nullptr, nsMacShellServiceConstructor },
#endif
{ &kNS_BROWSER_ABOUT_REDIRECTOR_CID, false, nullptr, AboutRedirector::Create },
#if defined(XP_WIN)
{ &kNS_WINIEHISTORYENUMERATOR_CID, false, nullptr, nsIEHistoryEnumeratorConstructor },
#elif defined(XP_MACOSX)
{ &kNS_SHELLSERVICE_CID, false, nullptr, nsMacShellServiceConstructor },
#endif
#if defined(MOZ_WIDGET_COCOA)
diff --git a/browser/components/preferences/in-content/main.js b/browser/components/preferences/in-content/main.js
@ -1510,7 +1523,7 @@ diff --git a/browser/components/preferences/in-content/main.js b/browser/compone
performanceSettingsLink.setAttribute("href", performanceSettingsUrl);
this.updateDefaultPerformanceSettingsPref();
@@ -1012,16 +1019,27 @@ var gMainPane = {
@@ -1021,16 +1028,27 @@ var gMainPane = {
// Reset exponential backoff delay time in order to do visual update in pollForDefaultBrowser.
this._backoffIndex = 0;
@ -1541,30 +1554,30 @@ diff --git a/browser/components/preferences/in-content/main.js b/browser/compone
diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
--- a/browser/components/shell/moz.build
+++ b/browser/components/shell/moz.build
@@ -39,16 +39,18 @@ if CONFIG['OS_ARCH'] == 'WINNT':
]
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
SOURCES += [
'nsMacShellService.cpp',
@@ -29,16 +29,18 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'coco
]
elif 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']:
XPIDL_SOURCES += [
'nsIGNOMEShellService.idl',
]
SOURCES += [
'nsGNOMEShellService.cpp',
+ 'nsKDEShellService.cpp',
+ 'nsUnixShellService.cpp',
]
if SOURCES:
FINAL_LIBRARY = 'browsercomps'
EXTRA_JS_MODULES += [
'HeadlessShell.jsm',
'ShellService.jsm',
elif CONFIG['OS_ARCH'] == 'WINNT':
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
+++ b/browser/components/shell/nsKDEShellService.cpp
@@ -0,0 +1,153 @@
@@ -0,0 +1,150 @@
+/* -*- 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
@ -1598,13 +1611,10 @@ new file mode 100644
+NS_IMPL_ISUPPORTS(nsKDEShellService, nsIGNOMEShellService, nsIShellService)
+
+NS_IMETHODIMP
+nsKDEShellService::IsDefaultBrowser(bool aStartupCheck,
+ bool aForAllTypes,
+nsKDEShellService::IsDefaultBrowser(bool aForAllTypes,
+ bool* aIsDefaultBrowser)
+{
+ *aIsDefaultBrowser = false;
+ if (aStartupCheck)
+ mCheckedThisSession = true;
+
+ nsCOMPtr<nsIMutableArray> command = do_CreateInstance( NS_ARRAY_CONTRACTID );
+ if (!command)
@ -1722,7 +1732,7 @@ diff --git a/browser/components/shell/nsKDEShellService.h b/browser/components/s
new file mode 100644
--- /dev/null
+++ b/browser/components/shell/nsKDEShellService.h
@@ -0,0 +1,30 @@
@@ -0,0 +1,32 @@
+/* -*- 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
@ -1732,10 +1742,12 @@ new file mode 100644
+#define nskdeshellservice_h____
+
+#include "nsIGNOMEShellService.h"
+#include "nsToolkitShellService.h"
+#include "nsString.h"
+#include "mozilla/Attributes.h"
+
+class nsKDEShellService final : public nsIGNOMEShellService
+class nsKDEShellService final : public nsIGNOMEShellService,
+ public nsToolkitShellService
+{
+public:
+ nsKDEShellService() : mCheckedThisSession(false) { }
@ -1803,7 +1815,7 @@ new file mode 100644
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -451,16 +451,18 @@
@@ -452,16 +452,18 @@
@RESPATH@/browser/defaults/settings/pinning
@RESPATH@/browser/defaults/settings/main

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0f4e56ecad7ba1dd67dad2744099e1fc2429ef973a617c5dbdbb8dd90ccbd74d
size 50075884

3
l10n-66.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:783874b8ba8eca7427f6a9c121296339785e42a766a54c5b07766500c18b1e4f
size 50126040

View File

@ -3,7 +3,7 @@
# User Mike Hommey <mh+mozilla@glandium.org>
# Date 1526871862 -32400
# Node ID 94f21505ff13cd089f7129cd24927cf8b31a0f43
# Parent 25ab6bab437517a8a182f1ab77898ae13b26a696
# Parent fc741a5ea37dbe145e0ca5f85e5dfb100f3c9091
Bug 1463035 - Remove MOZ_SIGNAL_TRAMPOLINE. r?darchons
For some reason, GNU as is not happy with the assembly generated after
@ -12,53 +12,10 @@ bug 1238661 anymore on Debian armel.
OTOH, as mentioned in bug 1238661 comment 4, we actually don't need this
workaround anymore, so let's just kill it.
diff --git a/mfbt/LinuxSignal.h b/mfbt/LinuxSignal.h
deleted file mode 100644
--- a/mfbt/LinuxSignal.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/* 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/. */
-
-#ifndef mozilla_LinuxSignal_h
-#define mozilla_LinuxSignal_h
-
-namespace mozilla {
-
-#if defined(__arm__)
-
-// Some (old) Linux kernels on ARM have a bug where a signal handler
-// can be called without clearing the IT bits in CPSR first. The result
-// is that the first few instructions of the handler could be skipped,
-// ultimately resulting in crashes. To workaround this bug, the handler
-// on ARM is a trampoline that starts with enough NOP instructions, so
-// that even if the IT bits are not cleared, only the NOP instructions
-// will be skipped over.
-
-template <void (*H)(int, siginfo_t*, void*)>
-__attribute__((naked)) void SignalTrampoline(int aSignal, siginfo_t* aInfo,
- void* aContext) {
- asm volatile("nop; nop; nop; nop" : : : "memory");
-
- asm volatile("b %0" : : "X"(H) : "memory");
-}
-
-#define MOZ_SIGNAL_TRAMPOLINE(h) (mozilla::SignalTrampoline<h>)
-
-#else // __arm__
-
-#define MOZ_SIGNAL_TRAMPOLINE(h) (h)
-
-#endif // __arm__
-
-} // namespace mozilla
-
-#endif // mozilla_LinuxSignal_h
diff --git a/mfbt/moz.build b/mfbt/moz.build
--- a/mfbt/moz.build
+++ b/mfbt/moz.build
@@ -124,20 +124,16 @@ EXPORTS["double-conversion"] = [
@@ -122,20 +122,16 @@ EXPORTS["double-conversion"] = [
LOCAL_INCLUDES += [
'/mfbt/double-conversion',
]
@ -84,9 +41,9 @@ diff --git a/tools/profiler/core/platform-linux-android.cpp b/tools/profiler/cor
+++ b/tools/profiler/core/platform-linux-android.cpp
@@ -55,17 +55,16 @@
#ifdef __GLIBC__
#include <execinfo.h> // backtrace, backtrace_symbols
#endif // def __GLIBC__
#include <strings.h> // index
# include <execinfo.h> // backtrace, backtrace_symbols
#endif // def __GLIBC__
#include <strings.h> // index
#include <errno.h>
#include <stdarg.h>

View File

@ -1,25 +0,0 @@
# HG changeset patch
# Parent 8d4f57b44373d51f0e151eeaadf9fe293bcdfb7c
diff --git a/layout/generic/nsIFrame.h b/layout/generic/nsIFrame.h
--- a/layout/generic/nsIFrame.h
+++ b/layout/generic/nsIFrame.h
@@ -8,17 +8,17 @@
#ifndef nsIFrame_h___
#define nsIFrame_h___
#ifndef MOZILLA_INTERNAL_API
#error This header/class should only be used within Mozilla code. It should not be used by extensions.
#endif
-#define MAX_REFLOW_DEPTH 200
+#define MAX_REFLOW_DEPTH 1000
/* nsIFrame is in the process of being deCOMtaminated, i.e., this file is
eventually going to be eliminated, and all callers will use nsFrame instead.
At the moment we're midway through this process, so you will see inlined
functions and member variables in this file. -dwh */
#include <algorithm>
#include <stdio.h>

View File

@ -1,5 +1,5 @@
# HG changeset patch
# Parent ff3da33eabc1d8760ec41a87afbaf44ded300ede
# Parent f55e33a10c2a23625826ef6f8dbe18d5a455d29e
Description: Add KDE integration to Firefox (toolkit parts)
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
Author: Lubos Lunak <lunak@suse.com>
@ -21,13 +21,13 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
+#include "nsKDEUtils.h"
#ifdef MOZ_MEMORY
#include "mozmemory.h"
# include "mozmemory.h"
#endif
#ifdef XP_WIN
#include "windows.h"
# include "windows.h"
#endif
@@ -4466,25 +4467,37 @@ float MOZ_MAYBE_UNUSED GetPref<float>(co
@@ -4467,25 +4468,37 @@ float MOZ_MAYBE_UNUSED GetPref<float>(co
// application pref files for backwards compatibility.
static const char* specialFiles[] = {
#if defined(XP_MACOSX)
@ -37,10 +37,10 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
#elif defined(XP_UNIX)
"unix.js"
+ , "" // placeholder for KDE (empty is otherwise harmless)
#if defined(_AIX)
# if defined(_AIX)
,
"aix.js"
#endif
# endif
#elif defined(XP_BEOS)
"beos.js"
#endif
@ -65,7 +65,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
// Load jar:$app/omni.jar!/defaults/preferences/*.js
// or jar:$gre/omni.jar!/defaults/preferences/*.js.
@@ -4532,17 +4545,17 @@ float MOZ_MAYBE_UNUSED GetPref<float>(co
@@ -4533,17 +4546,17 @@ float MOZ_MAYBE_UNUSED GetPref<float>(co
}
nsCOMPtr<nsIFile> path = do_QueryInterface(elem);
@ -171,12 +171,12 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloa
diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
--- a/toolkit/content/jar.mn
+++ b/toolkit/content/jar.mn
@@ -67,16 +67,18 @@ toolkit.jar:
@@ -65,16 +65,18 @@ toolkit.jar:
content/global/bindings/button.xml (widgets/button.xml)
content/global/bindings/calendar.js (widgets/calendar.js)
content/global/bindings/checkbox.xml (widgets/checkbox.xml)
content/global/bindings/datekeeper.js (widgets/datekeeper.js)
content/global/bindings/datepicker.js (widgets/datepicker.js)
content/global/bindings/datetimepopup.xml (widgets/datetimepopup.xml)
content/global/bindings/datetimebox.xml (widgets/datetimebox.xml)
content/global/bindings/datetimebox.css (widgets/datetimebox.css)
* content/global/bindings/dialog.xml (widgets/dialog.xml)
@ -186,15 +186,15 @@ diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
content/global/bindings/menu.xml (widgets/menu.xml)
content/global/bindings/menulist.xml (widgets/menulist.xml)
content/global/bindings/notification.xml (widgets/notification.xml)
content/global/bindings/numberbox.xml (widgets/numberbox.xml)
content/global/bindings/popup.xml (widgets/popup.xml)
content/global/bindings/radio.xml (widgets/radio.xml)
content/global/bindings/richlistbox.xml (widgets/richlistbox.xml)
content/global/bindings/scrollbox.xml (widgets/scrollbox.xml)
diff --git a/toolkit/content/widgets/dialog-kde.xml b/toolkit/content/widgets/dialog-kde.xml
new file mode 100644
--- /dev/null
+++ b/toolkit/content/widgets/dialog-kde.xml
@@ -0,0 +1,477 @@
@@ -0,0 +1,507 @@
+<?xml version="1.0"?>
+<!-- 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
@ -229,7 +229,7 @@ new file mode 100644
+ <xul:button dlgtype="accept" class="dialog-button" xbl:inherits="disabled=buttondisabledaccept"/>
+#elif XP_UNIX
+ >
+ <xul:button dlgtype="help" class="dialog-button" hidden="true"/>
+ <xul:button dlgtype="help" class="dialog-button" hidden="true"/>
+ <xul:button dlgtype="extra2" class="dialog-button" hidden="true"/>
+ <xul:spacer anonid="spacer" flex="1"/>
+ <xul:button dlgtype="accept" class="dialog-button" xbl:inherits="disabled=buttondisabledaccept"/>
@ -266,6 +266,11 @@ new file mode 100644
+ event.preventDefault();
+ })</field>
+
+ <!-- Gets populated by elements that are passed to document.l10n.setAttributes
+ to localize the dialog buttons. Needed to properly size the dialog after
+ the asynchronous translation. -->
+ <field name="_l10nButtons">[]</field>
+
+ <property name="buttons"
+ onget="return this.getAttribute('buttons');"
+ onset="this._configureButtons(val); return val;"/>
@ -365,16 +370,32 @@ new file mode 100644
+ this._configureButtons(this.buttons);
+
+ // listen for when window is closed via native close buttons
+ window.addEventListener("close", this._closeHandler);
+ window.addEventListener("close", this);
+
+ // for things that we need to initialize after onload fires
+ window.addEventListener("load", this.postLoadInit);
+ window.addEventListener("load", this);
+
+ window.moveToAlertPosition = this.moveToAlertPosition;
+ window.centerWindowOnScreen = this.centerWindowOnScreen;
+ ]]>
+ </constructor>
+
+ <method name="handleEvent">
+ <parameter name="aEvent"/>
+ <body><![CDATA[
+ switch (aEvent.type) {
+ case "close": {
+ this._closeHandler(aEvent);
+ break;
+ }
+ case "load": {
+ this.postLoadInit(aEvent);
+ break;
+ }
+ }
+ ]]></body>
+ </method>
+
+ <method name="postLoadInit">
+ <parameter name="aEvent"/>
+ <body>
@ -422,6 +443,12 @@ new file mode 100644
+
+ // Give focus after onload completes, see bug 103197.
+ setTimeout(focusInit, 0);
+
+ if (this._l10nButtons.length) {
+ document.l10n.translateElements(this._l10nButtons).then(() => {
+ window.sizeToContent();
+ });
+ }
+ ]]>
+ </body>
+ </method>
@ -490,13 +517,14 @@ new file mode 100644
+ button.setAttribute("label", this.getAttribute("buttonlabel" + dlgtype));
+ if (this.hasAttribute("buttonaccesskey" + dlgtype))
+ button.setAttribute("accesskey", this.getAttribute("buttonaccesskey" + dlgtype));
+ } else if (this.hasAttribute("buttonid" + dlgtype)) {
+ document.l10n.setAttributes(button, this.getAttribute("buttonid" + dlgtype));
+ this._l10nButtons.push(button);
+ } else if (dlgtype != "extra1" && dlgtype != "extra2") {
+ button.setAttribute("label", this.mStrBundle.GetStringFromName("button-" + dlgtype));
+ var accessKey = this.mStrBundle.GetStringFromName("accesskey-" + dlgtype);
+ if (accessKey)
+ button.setAttribute("accesskey", accessKey);
+ } else if (this.hasAttribute("buttonid" + dlgtype)) {
+ document.l10n.setAttributes(button, this.getAttribute("buttonid" + dlgtype));
+ }
+ }
+ // allow specifying alternate icons in the dialog header
@ -664,7 +692,9 @@ new file mode 100644
+ <handler event="focus" phase="capturing">
+ var btn = this.getButton(this.defaultButton);
+ if (btn)
+ btn.setAttribute("default", event.originalTarget == btn || !(event.originalTarget instanceof Ci.nsIDOMXULButtonElement));
+ btn.setAttribute("default", event.originalTarget == btn ||
+ !(event.originalTarget.localName == "button" ||
+ event.originalTarget.localName == "toolbarbutton"));
+ </handler>
+#endif
+ </handlers>
@ -675,7 +705,7 @@ new file mode 100644
diff --git a/toolkit/mozapps/downloads/nsHelperAppDlg.js b/toolkit/mozapps/downloads/nsHelperAppDlg.js
--- a/toolkit/mozapps/downloads/nsHelperAppDlg.js
+++ b/toolkit/mozapps/downloads/nsHelperAppDlg.js
@@ -1030,30 +1030,60 @@ nsUnknownContentTypeDialog.prototype = {
@@ -1033,30 +1033,60 @@ nsUnknownContentTypeDialog.prototype = {
if (params.handlerApp &&
params.handlerApp.executable &&
@ -848,7 +878,7 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build
--- a/toolkit/xre/moz.build
+++ b/toolkit/xre/moz.build
@@ -73,17 +73,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
@@ -81,17 +81,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
'../components/printingui',
]
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
@ -1281,8 +1311,8 @@ diff --git a/uriloader/exthandler/HandlerServiceParent.cpp b/uriloader/exthandle
#include "ContentHandlerService.h"
#include "nsStringEnumerator.h"
#ifdef MOZ_WIDGET_GTK
-#include "unix/nsGNOMERegistry.h"
+#include "unix/nsCommonRegistry.h"
-# include "unix/nsGNOMERegistry.h"
+# include "unix/nsCommonRegistry.h"
#endif
using mozilla::dom::ContentHandlerService;
@ -1591,7 +1621,7 @@ diff --git a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp b/uriloader/exthandler
#include "nsIIOService.h"
#include "nsAutoPtr.h"
#ifdef MOZ_ENABLE_DBUS
#include "nsDBusHandlerApp.h"
# include "nsDBusHandlerApp.h"
#endif
+#if defined(XP_UNIX) && !defined(XP_MACOSX)
+#include "nsKDEUtils.h"
@ -1678,8 +1708,8 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
#include "nsOSHelperAppService.h"
#include "nsMIMEInfoUnix.h"
#ifdef MOZ_WIDGET_GTK
-#include "nsGNOMERegistry.h"
+#include "nsCommonRegistry.h"
-# include "nsGNOMERegistry.h"
+# include "nsCommonRegistry.h"
#endif
#include "nsISupports.h"
#include "nsString.h"
@ -1688,7 +1718,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
#include "nsIURL.h"
#include "nsIFileStreams.h"
#include "nsILineInputStream.h"
@@ -1031,17 +1031,17 @@ nsresult nsOSHelperAppService::GetHandle
@@ -1025,17 +1025,17 @@ nsresult nsOSHelperAppService::GetHandle
nsresult nsOSHelperAppService::OSProtocolHandlerExists(
const char* aProtocolScheme, bool* aHandlerExists) {
@ -1707,7 +1737,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
nsCOMPtr<nsIHandlerService> handlerSvc =
do_GetService(NS_HANDLERSERVICE_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv) && handlerSvc) {
@@ -1051,17 +1051,17 @@ nsresult nsOSHelperAppService::OSProtoco
@@ -1045,17 +1045,17 @@ nsresult nsOSHelperAppService::OSProtoco
}
return rv;
@ -1726,7 +1756,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
nsresult nsOSHelperAppService::GetFileTokenForPath(
const char16_t* platformAppPath, nsIFile** aFile) {
@@ -1142,17 +1142,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel
@@ -1136,17 +1136,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel
nsresult rv =
LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt), majorType,
minorType, mime_types_description, true);
@ -1745,7 +1775,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt), majorType,
minorType, mime_types_description, false);
@@ -1254,17 +1254,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel
@@ -1248,17 +1248,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel
// Now look up our extensions
nsAutoString extensions, mime_types_description;
@ -2201,15 +2231,15 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
nsAutoString osVersion;
+ nsAutoString desktop;
#if defined(XP_WIN)
#pragma warning(push)
#pragma warning(disable : 4996) // VC12+ deprecates GetVersionEx
# pragma warning(push)
# pragma warning(disable : 4996) // VC12+ deprecates GetVersionEx
OSVERSIONINFO info = {sizeof(OSVERSIONINFO)};
if (GetVersionEx(&info)) {
nsTextFormatter::ssprintf(osVersion, u"%ld.%ld", info.dwMajorVersion,
info.dwMinorVersion);
}
+ desktop = NS_LITERAL_STRING("win");
#pragma warning(pop)
# pragma warning(pop)
#elif defined(MOZ_WIDGET_COCOA)
SInt32 majorVersion = nsCocoaFeatures::OSXVersionMajor();
SInt32 minorVersion = nsCocoaFeatures::OSXVersionMinor();
@ -2310,15 +2340,15 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
#include "prlink.h"
#ifdef MOZ_WIDGET_GTK
#include "nsIGIOService.h"
+#include "nsKDEUtils.h"
# include "nsIGIOService.h"
+# include "nsKDEUtils.h"
#endif
#ifdef MOZ_WIDGET_COCOA
#include <Carbon/Carbon.h>
#include "CocoaFileUtils.h"
#include "prmem.h"
#include "plbase64.h"
# include <Carbon/Carbon.h>
# include "CocoaFileUtils.h"
# include "prmem.h"
# include "plbase64.h"
@@ -1902,62 +1903,77 @@ nsLocalFile::SetPersistentDescriptor(con

View File

@ -1,2 +1,2 @@
REV=1ea7b51ef5bb
REV=164a57c0cdf0
REPO=http://hg.mozilla.org/releases/mozilla-release