1
0

- update to Firefox 52.0

* requires NSS >= 3.28.3
  * Pages containing insecure password fields now display a warning
    directly within username and password fields.
  * Windows 8 touch screen support for multiprocess Firefox
  * Send and open a tab from one device to another with Sync
  * Removed NPAPI support for plugins other than Flash. Silverlight,
    Java, Acrobat and the like are no longer supported.
  * Removed Battery Status API to reduce fingerprinting of users by
    trackers
- removed obsolete patches
  * mozilla-binutils-visibility.patch
  * mozilla-check_return.patch
  * mozilla-disable-skia-be.patch
  * mozilla-skia-overflow.patch
  * mozilla-skia-ppc-endianess.patch
- rebased patches
- enable rust usage for Tumbleweed

OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox?expand=0&rev=572
This commit is contained in:
Wolfgang Rosenauer 2017-03-07 08:35:10 +00:00 committed by Git OBS Bridge
parent 3ce0e89892
commit 14ce29297b
17 changed files with 336 additions and 646 deletions

View File

@ -1,3 +1,25 @@
-------------------------------------------------------------------
Sat Mar 4 16:57:45 UTC 2017 - wr@rosenauer.org
- update to Firefox 52.0
* requires NSS >= 3.28.3
* Pages containing insecure password fields now display a warning
directly within username and password fields.
* Windows 8 touch screen support for multiprocess Firefox
* Send and open a tab from one device to another with Sync
* Removed NPAPI support for plugins other than Flash. Silverlight,
Java, Acrobat and the like are no longer supported.
* Removed Battery Status API to reduce fingerprinting of users by
trackers
- removed obsolete patches
* mozilla-binutils-visibility.patch
* mozilla-check_return.patch
* mozilla-disable-skia-be.patch
* mozilla-skia-overflow.patch
* mozilla-skia-ppc-endianess.patch
- rebased patches
- enable rust usage for Tumbleweed
-------------------------------------------------------------------
Fri Jan 27 20:25:59 UTC 2017 - astieger@suse.com

View File

@ -18,14 +18,19 @@
# changed with every update
%define major 51
%define mainver %major.0.1
%define major 52
%define mainver %major.0
%define update_channel release
%define releasedate 20170126000000
%define releasedate 20170302000000
# PIE, full relro (x86_64 for now)
%define build_hardened 1
%if 0%{?suse_version} > 1320
%define firefox_use_gtk3 1
%define firefox_use_rust 1
%endif
# general build definitions
%if "%{update_channel}" != "aurora"
%define progname firefox
@ -36,9 +41,6 @@
%define pkgname firefox-dev-edition
%define appname Firefox Developer Edition
%endif
%if 0%{?suse_version} > 1320
%define firefox_use_gtk3 1
%endif
%define progdir %{_prefix}/%_lib/%{progname}
%define gnome_dir %{_prefix}
%define desktop_file_name %{progname}
@ -78,7 +80,7 @@ BuildRequires: libnotify-devel
BuildRequires: libproxy-devel
BuildRequires: makeinfo
BuildRequires: mozilla-nspr-devel >= 4.13.1
BuildRequires: mozilla-nss-devel >= 3.28.1
BuildRequires: mozilla-nss-devel >= 3.28.3
BuildRequires: nss-shared-helper-devel
BuildRequires: python-devel
BuildRequires: startup-notification-devel
@ -94,6 +96,11 @@ BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 3.4.0
BuildRequires: pkgconfig(gtk+-unix-print-3.0)
%endif
%if 0%{?firefox_use_rust}
BuildRequires: cargo
BuildRequires: rust >= 1.10
BuildRequires: rust-std
%endif
# libavcodec is required for H.264 support but the
# openSUSE version is currently not able to play H.264
# therefore the Packman version is required
@ -144,26 +151,20 @@ Patch3: mozilla-kde.patch
Patch4: mozilla-preferences.patch
Patch5: mozilla-language.patch
Patch6: mozilla-ntlm-full-path.patch
Patch8: mozilla-openaes-decl.patch
Patch10: mozilla-no-stdcxx-check.patch
Patch11: mozilla-reduce-files-per-UnifiedBindings.patch
Patch13: mozilla-check_return.patch
Patch14: mozilla-skia-overflow.patch
Patch17: mozilla-binutils-visibility.patch
Patch18: mozilla-skia-ppc-endianess.patch
Patch19: mozilla-disable-skia-be.patch
Patch7: mozilla-openaes-decl.patch
Patch8: mozilla-no-stdcxx-check.patch
Patch9: mozilla-reduce-files-per-UnifiedBindings.patch
Patch10: mozilla-aarch64-startup-crash.patch
# Firefox/browser
Patch101: firefox-kde.patch
Patch102: firefox-no-default-ualocale.patch
Patch103: firefox-branded-icons.patch
# hotfix
Patch200: mozilla-aarch64-startup-crash.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires(post): coreutils shared-mime-info desktop-file-utils
Requires(postun): shared-mime-info desktop-file-utils
%if %branding
Requires: %{name}-branding > 39.0
Requires: %{name}-branding > 44.0
%endif
Requires: mozilla-nspr >= %(rpm -q --queryformat '%{VERSION}' mozilla-nspr)
Requires: mozilla-nss >= %(rpm -q --queryformat '%{VERSION}' mozilla-nss)
@ -260,19 +261,14 @@ cd $RPM_BUILD_DIR/mozilla
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch13 -p1
%patch14 -p1
%patch17 -p1
%patch18 -p1
%patch19 -p1
# Firefox
%patch101 -p1
%patch102 -p1
%patch103 -p1
%patch200 -p1
%build
# no need to add build time to binaries
@ -328,6 +324,9 @@ ac_add_options --prefix=%{_prefix}
ac_add_options --libdir=%{_libdir}
ac_add_options --includedir=%{_includedir}
ac_add_options --enable-release
%if 0%{?firefox_use_rust}
ac_add_options --enable-rust
%endif
%if 0%{?firefox_use_gtk3}
ac_add_options --enable-default-toolkit=cairo-gtk3
%else
@ -564,7 +563,6 @@ exit 0
%dir %{progdir}/browser/
%dir %{progdir}/browser/chrome/
%dir %{progdir}/browser/extensions/
%{progdir}/browser/components/
%{progdir}/browser/defaults
%{progdir}/browser/features/
%{progdir}/browser/icons/
@ -586,9 +584,10 @@ exit 0
%{progdir}/firefox
%{progdir}/firefox-bin
%{progdir}/application.ini
%{progdir}/chrome.manifest
%{progdir}/dependentlibs.list
%{progdir}/icudt58l.dat
%{progdir}/*.so
%{progdir}/icudt56l.dat
%{progdir}/omni.ja
%{progdir}/fonts/
%{progdir}/platform.ini
@ -597,6 +596,7 @@ exit 0
%{progdir}/crashreporter
%{progdir}/crashreporter.ini
%{progdir}/Throbber-small.gif
%{progdir}/minidump-analyzer
%{progdir}/browser/crashreporter-override.ini
%endif
%{_datadir}/applications/%{desktop_file_name}.desktop

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:39f4acd60561c280126c6663b90027674e56c69720c8cd8a26e5072bd2023878
size 28492
oid sha256:48b13f30d86ee715f3f89fb39669de465d47571ca04e2fc7d8f342b523fe7037
size 28392

View File

@ -7,8 +7,8 @@
CHANNEL="release"
BRANCH="releases/mozilla-$CHANNEL"
RELEASE_TAG="327e081221b064b05a302d7877c6e4be2949a617"
VERSION="51.0.1"
RELEASE_TAG="44d6a57ab554308585a67a13035d31b264be781e"
VERSION="52.0"
# mozilla
if [ -d mozilla ]; then

View File

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

View File

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

View File

@ -1,11 +1,11 @@
# HG changeset patch
# Parent 2cae514c05c8836ca5b69884d3a07998a5d53e8b
# Parent 1c4e33861cfcffe5a189802cf97957b0701260db
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,1119 @@
@@ -0,0 +1,1134 @@
+#filter substitution
+<?xml version="1.0"?>
+# -*- Mode: HTML -*-
@ -149,7 +149,13 @@ new file mode 100644
+ <tooltip id="remoteBrowserTooltip"/>
+
+ <!-- for search and content formfill/pw manager -->
+ <panel type="autocomplete" id="PopupAutoComplete" noautofocus="true" hidden="true"/>
+
+ <panel type="autocomplete-richlistbox"
+ id="PopupAutoComplete"
+ noautofocus="true"
+ hidden="true"
+ overflowpadding="4"
+ norolluponanchor="true" />
+
+ <!-- for search with one-off buttons -->
+ <panel type="autocomplete" id="PopupSearchAutoComplete" noautofocus="true" hidden="true"/>
@ -160,7 +166,18 @@ new file mode 100644
+ noautofocus="true"
+ hidden="true"
+ flip="none"
+ level="parent"/>
+ level="parent"
+ overflowpadding="30" />
+
+ <panel id="DateTimePickerPanel"
+ type="arrow"
+ hidden="true"
+ orient="vertical"
+ noautofocus="true"
+ consumeoutsideclicks="false"
+ level="parent">
+ <iframe id="dateTimePopupFrame"/>
+ </panel>
+
+ <!-- for select dropdowns. The menupopup is what shows the list of options,
+ and the popuponly menulist makes things like the menuactive attributes
@ -170,7 +187,7 @@ new file mode 100644
+ <menupopup rolluponmousewheel="true"
+ activateontab="true" position="after_start"
+#ifdef XP_WIN
+ consumeoutsideclicks="false" ignorekeys="handled"
+ consumeoutsideclicks="false" ignorekeys="shortcuts"
+#endif
+ />
+ </menulist>
@ -267,12 +284,12 @@ new file mode 100644
+ onpopuphidden="SocialShare.onHidden()"
+ hidden="true">
+ <hbox class="social-share-toolbar">
+ <toolbarbutton id="manage-share-providers" class="toolbarbutton share-provider-button"
+ <toolbarbutton id="manage-share-providers" class="share-provider-button"
+ tooltiptext="&social.addons.label;"
+ oncommand="BrowserOpenAddonsMgr('addons://list/service');
+ this.parentNode.parentNode.hidePopup();"/>
+ <arrowscrollbox id="social-share-provider-buttons" orient="horizontal" flex="1" pack="end">
+ <toolbarbutton id="add-share-provider" class="toolbarbutton share-provider-button" type="radio"
+ <toolbarbutton id="add-share-provider" class="share-provider-button" type="radio"
+ group="share-providers" tooltiptext="&findShareServices.label;"
+ oncommand="SocialShare.showDirectory()"/>
+ </arrowscrollbox>
@ -679,13 +696,9 @@ new file mode 100644
+ newlines="stripsurroundingwhitespace"
+ ontextentered="this.handleCommand(param);"
+ ontextreverted="return this.handleRevert();"
+ pageproxystate="invalid"
+ onfocus="document.getElementById('identity-box').style.MozUserFocus= 'normal'"
+ onblur="setTimeout(() => { document.getElementById('identity-box').style.MozUserFocus = ''; }, 0);">
+ pageproxystate="invalid">
+ <!-- Use onclick instead of normal popup= syntax since the popup
+ code fires onmousedown, and hence eats our favicon drag events.
+ We only add the identity-box button to the tab order when the location bar
+ has focus, otherwise pressing F6 focuses it instead of the location bar -->
+ code fires onmousedown, and hence eats our favicon drag events. -->
+ <box id="identity-box" role="button"
+ align="center"
+ aria-label="&urlbar.viewSiteInfo.label;"
@ -752,14 +765,15 @@ new file mode 100644
+ </hbox>
+ </box>
+ <box id="urlbar-display-box" align="center">
+ <label class="urlbar-display urlbar-display-switchtab" value="&urlbar.switchToTab.label;"/>
+ <label id="switchtab" class="urlbar-display urlbar-display-switchtab" value="&urlbar.switchToTab.label;"/>
+ <label id="extension" class="urlbar-display urlbar-display-extension" value="&urlbar.extension.label;"/>
+ </box>
+ <hbox id="urlbar-icons">
+ <image id="page-report-button"
+ class="urlbar-icon"
+ hidden="true"
+ tooltiptext="&pageReportIcon.tooltip;"
+ onclick="gPopupBlockerObserver.onReportButtonClick(event);"/>
+ onmousedown="gPopupBlockerObserver.onReportButtonMousedown(event);"/>
+ <image id="reader-mode-button"
+ class="urlbar-icon"
+ hidden="true"
@ -1061,7 +1075,8 @@ new file mode 100644
+ tabcontainer="tabbrowser-tabs"
+ contentcontextmenu="contentAreaContextMenu"
+ autocompletepopup="PopupAutoComplete"
+ selectmenulist="ContentSelectDropdown"/>
+ selectmenulist="ContentSelectDropdown"
+ datetimepicker="DateTimePickerPanel"/>
+ </vbox>
+ <vbox id="browser-border-end" hidden="true" layer="true"/>
+ </hbox>
@ -1128,25 +1143,25 @@ new file mode 100644
diff --git a/browser/base/jar.mn b/browser/base/jar.mn
--- a/browser/base/jar.mn
+++ b/browser/base/jar.mn
@@ -68,16 +68,18 @@ browser.jar:
@@ -66,16 +66,18 @@ browser.jar:
content/browser/aboutSocialError.xhtml (content/aboutSocialError.xhtml)
content/browser/aboutProviderDirectory.xhtml (content/aboutProviderDirectory.xhtml)
content/browser/aboutTabCrashed.css (content/aboutTabCrashed.css)
content/browser/aboutTabCrashed.js (content/aboutTabCrashed.js)
content/browser/aboutTabCrashed.xhtml (content/aboutTabCrashed.xhtml)
* content/browser/aboutTabGroupsMigration.xhtml (content/aboutTabGroupsMigration.xhtml)
content/browser/aboutTabGroupsMigration.js (content/aboutTabGroupsMigration.js)
* content/browser/browser.css (content/browser.css)
content/browser/browser.js (content/browser.js)
* content/browser/browser.xul (content/browser.xul)
+* content/browser/browser-kde.xul (content/browser-kde.xul)
+% override chrome://browser/content/browser.xul chrome://browser/content/browser-kde.xul desktop=kde
content/browser/browser-addons.js (content/browser-addons.js)
content/browser/browser-captivePortal.js (content/browser-captivePortal.js)
content/browser/browser-ctrlTab.js (content/browser-ctrlTab.js)
content/browser/browser-customization.js (content/browser-customization.js)
content/browser/browser-data-submission-info-bar.js (content/browser-data-submission-info-bar.js)
content/browser/browser-devedition.js (content/browser-devedition.js)
content/browser/browser-feeds.js (content/browser-feeds.js)
content/browser/browser-fullScreenAndPointerLock.js (content/browser-fullScreenAndPointerLock.js)
content/browser/browser-fullZoom.js (content/browser-fullZoom.js)
diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/nsModule.cpp
--- a/browser/components/build/nsModule.cpp
+++ b/browser/components/build/nsModule.cpp
@ -1505,7 +1520,7 @@ new file mode 100644
+#define nskdeshellservice_h____
+
+#include "nsIGNOMEShellService.h"
+#include "nsStringAPI.h"
+#include "nsString.h"
+#include "mozilla/Attributes.h"
+
+class nsKDEShellService final : public nsIGNOMEShellService
@ -1576,7 +1591,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
@@ -675,16 +675,17 @@
@@ -652,16 +652,17 @@
@RESPATH@/greprefs.js
@RESPATH@/defaults/autoconfig/prefcalls.js
@RESPATH@/browser/defaults/permissions

View File

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

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

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

View File

@ -1,93 +1,93 @@
ach d6ba00c5c59a
af 221acbf9c551
an efef89681add
ar 940e066d2dd8
as a97311f0a051
ast 37ff5970cc8f
az 374715191cd0
bg d15a763f746a
bn-BD b4cdbb48d9fb
bn-IN 405c89530a66
br e730984a8770
bs e25f083ed28a
ca 2909feec9b62
cak b0fe49f697f3
cs 53096821fe5c
cy 4690316110e9
da 24845323c326
de ec96b812a542
dsb 8e338605ccb9
el 34a3488407a6
en-GB 8000aa9daf28
en-ZA ad5be8ba60f3
eo 3a024766912e
es-AR 541f1c3690da
es-CL 56477941664e
es-ES 8b7162b69b09
es-MX 77bc335e0853
et a9b1775874d3
eu 52ec58e99375
fa 95d8b781e109
ff 2e39572916fb
fi 94ad306d1492
fr 27c4dc4cba4d
fy-NL 9399c11d5edb
ga-IE 5d9852283915
gd bc702e34726b
gl 74d31ad43213
gn 43e8b6cb5fc6
gu-IN 97b7ec458ace
he 32e85d63d323
hi-IN 25c7d3fceff8
hr 15e2ad66589c
hsb ff5fb215596d
hu 814fad9068d9
hy-AM 339e5b6d31d2
id 1f325ac9007c
is e346cec6bace
it fc766adb485d
ja 78a60bf924e7
ja-JP-mac 0ca52430f89c
ka fb0e9f4fdbe7
kab 3de51a9c61ce
kk 368faf9a9ed3
km 97cd3bb4f2f3
kn f657dd18d8a1
ko bc9fde5af704
lij 500f328a0bf0
lt 3eefea021768
lv 90a827f08cb4
mai 4a95441f376c
mk 666cf4d8067b
ml 1f2e734fbd60
mr 8067689c39f3
ms 76c4152f9e3f
nb-NO 1effc4c0ba39
nl 28f169daa01f
nn-NO 272d7d7fbd67
or 765fc4b06ed0
pa-IN 8518db59aecf
pl 339f79766251
pt-BR 3e521cc717b9
pt-PT 5ea4fd22db27
rm 66840279c384
ro a87554f9bf7e
ru a8f0bc1f85db
si 2629b7b1279c
sk b78499013196
sl b91f9bd2d619
son 2934d6741b1a
sq 8ff97a87cbeb
sr 8ddd91c5629b
sv-SE 483944f0c102
ta dc89744a2281
te 545bca10223a
th 6076f69e7093
tr 70129fabcb60
uk cb0a4b0816fa
uz 01402c615783
vi d6c09226896e
xh f587b401f8fc
zh-CN d260be15e967
zh-TW 267404478cf9
ach 34c236a22596
af 90f7ccd90de4
an 10f71571821e
ar 0edb7b32133a
as ee642d74fde9
ast 80b866a98b5a
az 07778ef756d4
bg f86aa012265d
bn-BD 6182802acd04
bn-IN 0775fc62a38e
br 88938f2eb7e2
bs afe1158833f4
ca c49b6bb37779
cak 30c024aa79ef
cs 392a1ff68cfd
cy e9cc2975266f
da cb1423eac811
de 6535fbec1846
dsb bbdbee2ecc9f
el 4232653d09a7
en-GB 3b1783bdb6fd
en-ZA 86f98526de2f
eo 6af9eb3bb290
es-AR adc3a9f3054e
es-CL 8ce5a00c2709
es-ES 3debdad3d876
es-MX c2d80c000c8c
et 5ce460a1227b
eu 55202a38f74c
fa de4daf555606
ff 98974e0270a8
fi 903b0416494a
fr 7e9efb5f39b1
fy-NL 551f14553b31
ga-IE 94a750872504
gd b2e4e78a85cf
gl 79eda21c5b0b
gn 8448413afd01
gu-IN ef0d3c1d041a
he 31df213cf89d
hi-IN 6578b433d66e
hr 77f103c07be0
hsb 99f7c592ff8c
hu 7ec46b30e96d
hy-AM ee9609100a98
id 584289a98164
is 0de2039f0ead
it 81a6b9f3a701
ja 289cc8d9b658
ja-JP-mac 1dc42d8f8c6b
ka fd11643d032b
kab 89a29ca718ef
kk bbde07088662
km 1d78cae948e2
kn ceb699bfc19e
ko ab9bc02a8c39
lij 221601dc2320
lt 1c563aa726f8
lv 33dd8fbeb14e
mai 4974d9967e3a
mk 85557d511a18
ml 3ac6473b90b8
mr 9c8106a513fd
ms f5ed710c8534
nb-NO c84b8fb6b939
nl b3c2ab953068
nn-NO bc795ce8885a
or ad0d79e1df34
pa-IN 7a7d721c7f47
pl 42ea1da43a3b
pt-BR e9eaef0caba5
pt-PT 5deb6216933d
rm 4981325b9462
ro 952587a63617
ru 3d319dcf82c7
si ea8510d62e56
sk 968ee9fbd8ba
sl e398e25297bc
son a071d439a5f3
sq ab626a887267
sr 3fb1197cc3f3
sv-SE 2d93a3f0c284
ta e5fbcf49496f
te d4cabe943952
th e66a11b8da51
tr 2ec45f681bb0
uk d3ccc79b70b2
uz 53122cc7d6ad
vi e4f8d820bef2
xh 6ba5a5671721
zh-CN 02ca4c1400c1
zh-TW d17da9c45a93

View File

@ -1,30 +0,0 @@
# HG changeset patch
# User Wolfgang Rosenauer <wr@rosenauer.org>
# Parent 83bc32d997c714b607db1ffa71f02b30e1484a75
From: NetBSD
Subject: Workaround for gcc/binutils combination in Leap 42.2
References:
https://bugzilla.opensuse.org/show_bug.cgi?id=984637
diff --git a/xpcom/components/Module.h b/xpcom/components/Module.h
--- a/xpcom/components/Module.h
+++ b/xpcom/components/Module.h
@@ -120,17 +120,17 @@ struct Module
#if defined(MOZILLA_INTERNAL_API)
# define NSMODULE_NAME(_name) _name##_NSModule
# if defined(_MSC_VER)
# pragma section(".kPStaticModules$M", read)
# pragma comment(linker, "/merge:.kPStaticModules=.rdata")
# define NSMODULE_SECTION __declspec(allocate(".kPStaticModules$M"), dllexport)
# elif defined(__GNUC__)
# if defined(__ELF__)
-# define NSMODULE_SECTION __attribute__((section(".kPStaticModules"), visibility("protected")))
+# define NSMODULE_SECTION __attribute__((section(".kPStaticModules"), visibility("default")))
# elif defined(__MACH__)
# define NSMODULE_SECTION __attribute__((section("__DATA, .kPStaticModules"), visibility("default")))
# elif defined (_WIN32)
# define NSMODULE_SECTION __attribute__((section(".kPStaticModules"), dllexport))
# endif
# endif
# if !defined(NSMODULE_SECTION)
# error Do not know how to define sections.

View File

@ -1,79 +0,0 @@
# HG changeset patch
# User Wolfgang Rosenauer <wr@rosenauer.org>
# Parent 5f8b5e8163ece92dc819896dd52b9dbf5f524fe3
diff --git a/media/libstagefright/binding/include/mp4_demuxer/ByteWriter.h b/media/libstagefright/binding/include/mp4_demuxer/ByteWriter.h
--- a/media/libstagefright/binding/include/mp4_demuxer/ByteWriter.h
+++ b/media/libstagefright/binding/include/mp4_demuxer/ByteWriter.h
@@ -19,57 +19,64 @@ public:
{
}
~ByteWriter()
{
}
void WriteU8(uint8_t aByte)
{
- mPtr.append(aByte);
+ bool rv;
+ rv = mPtr.append(aByte);
}
void WriteU16(uint16_t aShort)
{
uint8_t c[2];
+ bool rv;
mozilla::BigEndian::writeUint16(&c[0], aShort);
- mPtr.append(&c[0], 2);
+ rv = mPtr.append(&c[0], 2);
}
void WriteU32(uint32_t aLong)
{
uint8_t c[4];
+ bool rv;
mozilla::BigEndian::writeUint32(&c[0], aLong);
- mPtr.append(&c[0], 4);
+ rv = mPtr.append(&c[0], 4);
}
void Write32(int32_t aLong)
{
uint8_t c[4];
+ bool rv;
mozilla::BigEndian::writeInt32(&c[0], aLong);
- mPtr.append(&c[0], 4);
+ rv = mPtr.append(&c[0], 4);
}
void WriteU64(uint64_t aLongLong)
{
uint8_t c[8];
+ bool rv;
mozilla::BigEndian::writeUint64(&c[0], aLongLong);
- mPtr.append(&c[0], 8);
+ rv = mPtr.append(&c[0], 8);
}
void Write64(int64_t aLongLong)
{
uint8_t c[8];
+ bool rv;
mozilla::BigEndian::writeInt64(&c[0], aLongLong);
- mPtr.append(&c[0], 8);
+ rv = mPtr.append(&c[0], 8);
}
void Write(const uint8_t* aSrc, size_t aCount)
{
- mPtr.append(aSrc, aCount);
+ bool rv;
+ rv = mPtr.append(aSrc, aCount);
}
private:
mozilla::Vector<uint8_t>& mPtr;
};
}
#endif

View File

@ -1,292 +0,0 @@
# HG changeset patch
# User Lee Salzman <lsalzman@mozilla.com>
# Date 1484854371 18000
# Node ID 42afdb8f7e6b3e8a465042f64c6c49782f231af4
# Parent dfadd79c97458f898d542461033a61dd34d3a5f0
Bug 1319374 - Wrap PaintCounter with ifdef USE_SKIA. r=mchang, a=jcristau
diff --git a/gfx/2d/BorrowedContext.h b/gfx/2d/BorrowedContext.h
--- a/gfx/2d/BorrowedContext.h
+++ b/gfx/2d/BorrowedContext.h
@@ -190,18 +190,28 @@ public:
}
~BorrowedCGContext() {
MOZ_ASSERT(!cg);
}
CGContextRef cg;
private:
+#ifdef USE_SKIA
static CGContextRef BorrowCGContextFromDrawTarget(DrawTarget *aDT);
static void ReturnCGContextToDrawTarget(DrawTarget *aDT, CGContextRef cg);
+#else
+ static CGContextRef BorrowCGContextFromDrawTarget(DrawTarget *aDT) {
+ MOZ_CRASH("Not supported without Skia");
+ }
+
+ static void ReturnCGContextToDrawTarget(DrawTarget *aDT, CGContextRef cg) {
+ MOZ_CRASH("not supported without Skia");
+ }
+#endif
DrawTarget *mDT;
};
#endif
} // namespace gfx
} // namespace mozilla
#endif // _MOZILLA_GFX_BORROWED_CONTEXT_H
diff --git a/gfx/layers/composite/LayerManagerComposite.cpp b/gfx/layers/composite/LayerManagerComposite.cpp
--- a/gfx/layers/composite/LayerManagerComposite.cpp
+++ b/gfx/layers/composite/LayerManagerComposite.cpp
@@ -7,17 +7,16 @@
#include <stddef.h> // for size_t
#include <stdint.h> // for uint16_t, uint32_t
#include "CanvasLayerComposite.h" // for CanvasLayerComposite
#include "ColorLayerComposite.h" // for ColorLayerComposite
#include "Composer2D.h" // for Composer2D
#include "CompositableHost.h" // for CompositableHost
#include "ContainerLayerComposite.h" // for ContainerLayerComposite, etc
#include "FPSCounter.h" // for FPSState, FPSCounter
-#include "PaintCounter.h" // For PaintCounter
#include "FrameMetrics.h" // for FrameMetrics
#include "GeckoProfiler.h" // for profiler_set_frame_number, etc
#include "ImageLayerComposite.h" // for ImageLayerComposite
#include "Layers.h" // for Layer, ContainerLayer, etc
#include "LayerScope.h" // for LayerScope Tool
#include "protobuf/LayerScopePacket.pb.h" // for protobuf (LayerScope)
#include "PaintedLayerComposite.h" // for PaintedLayerComposite
#include "TiledContentHost.h"
@@ -68,16 +67,20 @@
#include "nsScreenManagerGonk.h"
#include "nsWindow.h"
#endif
#include "GeckoProfiler.h"
#include "TextRenderer.h" // for TextRenderer
#include "mozilla/layers/CompositorBridgeParent.h"
#include "TreeTraversal.h" // for ForEachNode
+#ifdef USE_SKIA
+#include "PaintCounter.h" // For PaintCounter
+#endif
+
class gfxContext;
namespace mozilla {
namespace layers {
class ImageLayer;
using namespace mozilla::gfx;
@@ -128,16 +131,20 @@ LayerManagerComposite::LayerManagerCompo
, mGeometryChanged(true)
, mLastFrameMissedHWC(false)
, mWindowOverlayChanged(false)
, mLastPaintTime(TimeDuration::Forever())
, mRenderStartTime(TimeStamp::Now())
{
mTextRenderer = new TextRenderer(aCompositor);
MOZ_ASSERT(aCompositor);
+
+#ifdef USE_SKIA
+ mPaintCounter = nullptr;
+#endif
}
LayerManagerComposite::~LayerManagerComposite()
{
Destroy();
}
@@ -146,18 +153,21 @@ LayerManagerComposite::Destroy()
{
if (!mDestroyed) {
mCompositor->GetWidget()->CleanupWindowEffects();
if (mRoot) {
RootLayer()->Destroy();
}
mRoot = nullptr;
mClonedLayerTreeProperties = nullptr;
+ mDestroyed = true;
+
+#ifdef USE_SKIA
mPaintCounter = nullptr;
- mDestroyed = true;
+#endif
}
}
void
LayerManagerComposite::UpdateRenderBounds(const IntRect& aRect)
{
mRenderBounds = aRect;
}
@@ -559,48 +569,52 @@ LayerManagerComposite::RootLayer() const
#endif
void
LayerManagerComposite::InvalidateDebugOverlay(nsIntRegion& aInvalidRegion, const IntRect& aBounds)
{
bool drawFps = gfxPrefs::LayersDrawFPS();
bool drawFrameCounter = gfxPrefs::DrawFrameCounter();
bool drawFrameColorBars = gfxPrefs::CompositorDrawColorBars();
- bool drawPaintTimes = gfxPrefs::AlwaysPaint();
if (drawFps || drawFrameCounter) {
aInvalidRegion.Or(aInvalidRegion, nsIntRect(0, 0, 256, 256));
}
if (drawFrameColorBars) {
aInvalidRegion.Or(aInvalidRegion, nsIntRect(0, 0, 10, aBounds.height));
}
+
+#ifdef USE_SKIA
+ bool drawPaintTimes = gfxPrefs::AlwaysPaint();
if (drawPaintTimes) {
aInvalidRegion.Or(aInvalidRegion, nsIntRect(PaintCounter::GetPaintRect()));
}
+#endif
}
+#ifdef USE_SKIA
void
LayerManagerComposite::DrawPaintTimes(Compositor* aCompositor)
{
if (!mPaintCounter) {
mPaintCounter = new PaintCounter();
}
TimeDuration compositeTime = TimeStamp::Now() - mRenderStartTime;
mPaintCounter->Draw(aCompositor, mLastPaintTime, compositeTime);
}
+#endif
static uint16_t sFrameCount = 0;
void
LayerManagerComposite::RenderDebugOverlay(const IntRect& aBounds)
{
bool drawFps = gfxPrefs::LayersDrawFPS();
bool drawFrameCounter = gfxPrefs::DrawFrameCounter();
bool drawFrameColorBars = gfxPrefs::CompositorDrawColorBars();
- bool drawPaintTimes = gfxPrefs::AlwaysPaint();
TimeStamp now = TimeStamp::Now();
if (drawFps) {
if (!mFPS) {
mFPS = MakeUnique<FPSState>();
}
@@ -731,19 +745,22 @@ LayerManagerComposite::RenderDebugOverla
}
#endif
if (drawFrameColorBars || drawFrameCounter) {
// We intentionally overflow at 2^16.
sFrameCount++;
}
+#ifdef USE_SKIA
+ bool drawPaintTimes = gfxPrefs::AlwaysPaint();
if (drawPaintTimes) {
DrawPaintTimes(mCompositor);
}
+#endif
}
RefPtr<CompositingRenderTarget>
LayerManagerComposite::PushGroupForLayerEffects()
{
// This is currently true, so just making sure that any new use of this
// method is flagged for investigation
MOZ_ASSERT(gfxPrefs::LayersEffectInvert() ||
diff --git a/gfx/layers/composite/LayerManagerComposite.h b/gfx/layers/composite/LayerManagerComposite.h
--- a/gfx/layers/composite/LayerManagerComposite.h
+++ b/gfx/layers/composite/LayerManagerComposite.h
@@ -326,21 +326,16 @@ private:
* Render the current layer tree to the active target.
*/
void Render(const nsIntRegion& aInvalidRegion, const nsIntRegion& aOpaqueRegion);
#if defined(MOZ_WIDGET_ANDROID) || defined(MOZ_WIDGET_GONK)
void RenderToPresentationSurface();
#endif
/**
- * Render paint and composite times above the frame.
- */
- void DrawPaintTimes(Compositor* aCompositor);
-
- /**
* We need to know our invalid region before we're ready to render.
*/
void InvalidateDebugOverlay(nsIntRegion& aInvalidRegion, const gfx::IntRect& aBounds);
/**
* Render debug overlays such as the FPS/FrameCounter above the frame.
*/
void RenderDebugOverlay(const gfx::IntRect& aBounds);
@@ -386,19 +381,26 @@ private:
RefPtr<TextRenderer> mTextRenderer;
bool mGeometryChanged;
// Testing property. If hardware composer is supported, this will return
// true if the last frame was deemed 'too complicated' to be rendered.
bool mLastFrameMissedHWC;
bool mWindowOverlayChanged;
- RefPtr<PaintCounter> mPaintCounter;
TimeDuration mLastPaintTime;
TimeStamp mRenderStartTime;
+
+#ifdef USE_SKIA
+ /**
+ * Render paint and composite times above the frame.
+ */
+ void DrawPaintTimes(Compositor* aCompositor);
+ RefPtr<PaintCounter> mPaintCounter;
+#endif
};
/**
* Composite layers are for use with OMTC on the compositor thread only. There
* must be corresponding Basic layers on the content thread. For composite
* layers, the layer manager only maintains the layer tree, all rendering is
* done by a Compositor (see Compositor.h). As such, composite layers are
* platform-independent and can be used on any platform for which there is a
diff --git a/gfx/layers/moz.build b/gfx/layers/moz.build
--- a/gfx/layers/moz.build
+++ b/gfx/layers/moz.build
@@ -335,17 +335,16 @@ UNIFIED_SOURCES += [
'composite/CompositableHost.cpp',
'composite/ContainerLayerComposite.cpp',
'composite/ContentHost.cpp',
'composite/FPSCounter.cpp',
'composite/FrameUniformityData.cpp',
'composite/ImageHost.cpp',
'composite/ImageLayerComposite.cpp',
'composite/LayerManagerComposite.cpp',
- 'composite/PaintCounter.cpp',
'composite/PaintedLayerComposite.cpp',
'composite/TextRenderer.cpp',
'composite/TextureHost.cpp',
'composite/TiledContentHost.cpp',
'Compositor.cpp',
'CopyableCanvasLayer.cpp',
'Effects.cpp',
'FrameMetrics.cpp',
@@ -480,8 +479,13 @@ MOCHITEST_CHROME_MANIFESTS += ['apz/test
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
CXXFLAGS += CONFIG['TK_CFLAGS']
LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
if CONFIG['GNU_CXX']:
CXXFLAGS += ['-Wno-error=shadow']
+
+if CONFIG['MOZ_ENABLE_SKIA']:
+ UNIFIED_SOURCES += [
+ 'composite/PaintCounter.cpp',
+ ]

View File

@ -1,5 +1,5 @@
# HG changeset patch
# Parent f3e80d26a430dfa1c58421fb66144a3c23ffc166
# Parent 5c8ae59424f5318bf7a387257771bf95d3893063
Description: Add KDE integration to Firefox (toolkit parts)
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
Author: Lubos Lunak <lunak@suse.com>
@ -255,12 +255,12 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon
int64_t goat = PR_Now() - mStartTime;
showTaskbarAlert = goat > alertIntervalUSec;
@@ -2763,16 +2776,17 @@ nsDownload::SetState(DownloadState aStat
NS_LITERAL_STRING(DOWNLOAD_MANAGER_ALERT_ICON), title,
@@ -2764,16 +2777,17 @@ nsDownload::SetState(DownloadState aStat
message, !removeWhenDone,
mPrivate ? NS_LITERAL_STRING("private") : NS_LITERAL_STRING("non-private"),
mDownloadManager, EmptyString(), NS_LITERAL_STRING("auto"),
EmptyString(), EmptyString(), nullptr, mPrivate);
EmptyString(), EmptyString(), nullptr, mPrivate,
false /* requireInteraction */);
}
}
}
@ -276,14 +276,14 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon
diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
--- a/toolkit/content/jar.mn
+++ b/toolkit/content/jar.mn
@@ -67,29 +67,33 @@ toolkit.jar:
content/global/viewZoomOverlay.js
content/global/bindings/autocomplete.xml (widgets/autocomplete.xml)
content/global/bindings/browser.xml (widgets/browser.xml)
@@ -71,29 +71,33 @@ toolkit.jar:
content/global/bindings/button.xml (widgets/button.xml)
content/global/bindings/checkbox.xml (widgets/checkbox.xml)
content/global/bindings/colorpicker.xml (widgets/colorpicker.xml)
content/global/bindings/datetimepicker.xml (widgets/datetimepicker.xml)
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)
+* content/global/bindings/dialog-kde.xml (widgets/dialog-kde.xml)
+% override chrome://global/content/bindings/dialog.xml chrome://global/content/bindings/dialog-kde.xml desktop=kde
@ -310,6 +310,18 @@ diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
content/global/bindings/scale.xml (widgets/scale.xml)
content/global/bindings/scrollbar.xml (widgets/scrollbar.xml)
content/global/bindings/scrollbox.xml (widgets/scrollbox.xml)
@@ -113,9 +117,9 @@ toolkit.jar:
content/global/bindings/videocontrols.css (widgets/videocontrols.css)
* content/global/bindings/wizard.xml (widgets/wizard.xml)
#ifdef XP_MACOSX
content/global/macWindowMenu.js
#endif
content/global/svg/svgBindings.xml (/layout/svg/resources/content/svgBindings.xml)
content/global/gmp-sources/eme-adobe.json (gmp-sources/eme-adobe.json)
content/global/gmp-sources/openh264.json (gmp-sources/openh264.json)
- content/global/gmp-sources/widevinecdm.json (gmp-sources/widevinecdm.json)
\ No newline at end of file
+ content/global/gmp-sources/widevinecdm.json (gmp-sources/widevinecdm.json)
diff --git a/toolkit/content/widgets/dialog-kde.xml b/toolkit/content/widgets/dialog-kde.xml
new file mode 100644
--- /dev/null
@ -460,7 +472,7 @@ new file mode 100644
+ <body>
+ <![CDATA[
+ var xOffset = screen.availWidth/2 - window.outerWidth/2;
+ var yOffset = screen.availHeight/2 - window.outerHeight/2; //(opener.outerHeight *2)/10;
+ var yOffset = screen.availHeight/2 - window.outerHeight/2;
+
+ xOffset = xOffset > 0 ? xOffset : 0;
+ yOffset = yOffset > 0 ? yOffset : 0;
@ -776,7 +788,7 @@ diff --git a/toolkit/content/widgets/preferences-kde.xml b/toolkit/content/widge
new file mode 100644
--- /dev/null
+++ b/toolkit/content/widgets/preferences-kde.xml
@@ -0,0 +1,1403 @@
@@ -0,0 +1,1411 @@
+<?xml version="1.0"?>
+
+<!DOCTYPE bindings [
@ -2042,11 +2054,19 @@ new file mode 100644
+ </body>
+ </method>
+
+ <field name="DeferredTask" readonly="true">
+ let targetObj = {};
+ Components.utils.import("resource://gre/modules/DeferredTask.jsm", targetObj);
+ targetObj.DeferredTask;
+ </field>
+ <property name="DeferredTask" readonly="true">
+ <getter><![CDATA[
+ let module = {};
+ Components.utils.import("resource://gre/modules/DeferredTask.jsm", module);
+ Object.defineProperty(this, "DeferredTask", {
+ configurable: true,
+ enumerable: true,
+ writable: true,
+ value: module.DeferredTask
+ });
+ return module.DeferredTask;
+ ]]></getter>
+ </property>
+ <method name="_deferredValueUpdate">
+ <parameter name="aElement"/>
+ <body>
@ -2180,6 +2200,117 @@ new file mode 100644
+# PrefWindow II (???)
+# PrefWindow I (June 4, 1999)
+#
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
@@ -627,17 +627,17 @@ nsUnknownContentTypeDialog.prototype = {
else
typeString = mimeInfo.MIMEType;
}
// When the length is unknown, contentLength would be -1
if (this.mLauncher.contentLength >= 0) {
let [size, unit] = DownloadUtils.
convertByteUnits(this.mLauncher.contentLength);
type.value = this.dialogElement("strings")
- .getFormattedString("orderedFileSizeWithType",
+ .getFormattedString("orderedFileSizeWithType",
[typeString, size, unit]);
}
else {
type.value = typeString;
}
},
// Returns true if opening the default application makes sense.
@@ -801,17 +801,17 @@ nsUnknownContentTypeDialog.prototype = {
switch (this.dialogElement("openHandler").selectedIndex) {
case 0:
// No app need be specified in this case.
ok = true;
break;
case 1:
// only enable the OK button if we have a default app to use or if
// the user chose an app....
- ok = this.chosenApp || /\S/.test(this.dialogElement("otherHandler").getAttribute("path"));
+ ok = this.chosenApp || /\S/.test(this.dialogElement("otherHandler").getAttribute("path"));
break;
}
}
// Enable Ok button if ok to press.
this.mDialog.document.documentElement.getButton("accept").disabled = !ok;
},
@@ -1068,30 +1068,56 @@ nsUnknownContentTypeDialog.prototype = {
params.handlerApp.executable &&
params.handlerApp.executable.isFile()) {
// Remember the file they chose to run.
this.chosenApp = params.handlerApp;
}
}
else {
#if MOZ_WIDGET_GTK == 3
- var nsIApplicationChooser = Components.interfaces.nsIApplicationChooser;
- var appChooser = Components.classes["@mozilla.org/applicationchooser;1"]
- .createInstance(nsIApplicationChooser);
- appChooser.init(this.mDialog, this.dialogElement("strings").getString("chooseAppFilePickerTitle"));
- var contentTypeDialogObj = this;
- let appChooserCallback = function appChooserCallback_done(aResult) {
- if (aResult) {
- contentTypeDialogObj.chosenApp = aResult.QueryInterface(Components.interfaces.nsILocalHandlerApp);
+ // handle the KDE case which is implemented in the filepicker
+ // therefore falling back to Gtk2 like behaviour if KDE is running
+ // FIXME this should be better handled in the nsIApplicationChooser interface
+ var env = Components.classes["@mozilla.org/process/environment;1"]
+ .getService(Components.interfaces.nsIEnvironment);
+ if (env.get('KDE_FULL_SESSION') == "true")
+ {
+ var nsIFilePicker = Components.interfaces.nsIFilePicker;
+ var fp = Components.classes["@mozilla.org/filepicker;1"]
+ .createInstance(nsIFilePicker);
+ fp.init(this.mDialog,
+ this.dialogElement("strings").getString("chooseAppFilePickerTitle"),
+ nsIFilePicker.modeOpen);
+
+ fp.appendFilters(nsIFilePicker.filterApps);
+
+ if (fp.show() == nsIFilePicker.returnOK && fp.file) {
+ // Remember the file they chose to run.
+ var localHandlerApp =
+ Components.classes["@mozilla.org/uriloader/local-handler-app;1"].
+ createInstance(Components.interfaces.nsILocalHandlerApp);
+ localHandlerApp.executable = fp.file;
+ this.chosenApp = localHandlerApp;
}
- contentTypeDialogObj.finishChooseApp();
- };
- appChooser.open(this.mLauncher.MIMEInfo.MIMEType, appChooserCallback);
- // The finishChooseApp is called from appChooserCallback
- return;
+ } else {
+ var nsIApplicationChooser = Components.interfaces.nsIApplicationChooser;
+ var appChooser = Components.classes["@mozilla.org/applicationchooser;1"]
+ .createInstance(nsIApplicationChooser);
+ appChooser.init(this.mDialog, this.dialogElement("strings").getString("chooseAppFilePickerTitle"));
+ var contentTypeDialogObj = this;
+ let appChooserCallback = function appChooserCallback_done(aResult) {
+ if (aResult) {
+ contentTypeDialogObj.chosenApp = aResult.QueryInterface(Components.interfaces.nsILocalHandlerApp);
+ }
+ contentTypeDialogObj.finishChooseApp();
+ };
+ appChooser.open(this.mLauncher.MIMEInfo.MIMEType, appChooserCallback);
+ // The finishChooseApp is called from appChooserCallback
+ return;
+ }
#else
var nsIFilePicker = Components.interfaces.nsIFilePicker;
var fp = Components.classes["@mozilla.org/filepicker;1"]
.createInstance(nsIFilePicker);
fp.init(this.mDialog,
this.dialogElement("strings").getString("chooseAppFilePickerTitle"),
nsIFilePicker.modeOpen);
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
@ -3676,7 +3807,7 @@ diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build
diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
--- a/xpcom/io/nsLocalFileUnix.cpp
+++ b/xpcom/io/nsLocalFileUnix.cpp
@@ -44,16 +44,17 @@
@@ -46,16 +46,17 @@
#include "prproces.h"
#include "nsIDirectoryEnumerator.h"
#include "nsISimpleEnumerator.h"

View File

@ -1,32 +0,0 @@
# HG changeset patch
# User Lee Salzman <lsalzman@mozilla.com>
# Date 1474489725 14400
# Wed Sep 21 16:28:45 2016 -0400
# Node ID 38a427a913b57080374b9966466b8f436ec39eb8
# Parent 4dfd3f00543d1d7adc3f0f852e6f32fbca6f3420
fix invalid Sk4f store to SkColor in SkPixmap::erase
MozReview-Commit-ID: 840x1nXgYns
diff --git a/gfx/skia/skia/src/core/SkPixmap.cpp b/gfx/skia/skia/src/core/SkPixmap.cpp
--- a/gfx/skia/skia/src/core/SkPixmap.cpp
+++ b/gfx/skia/skia/src/core/SkPixmap.cpp
@@ -221,17 +221,17 @@ bool SkPixmap::erase(const SkColor4f& or
pm = *this;
}
const SkColor4f color = origColor.pin();
if (kRGBA_F16_SkColorType != pm.colorType()) {
Sk4f c4 = Sk4f::Load(color.vec());
SkColor c;
- (c4 * Sk4f(255) + Sk4f(0.5f)).store(&c);
+ SkNx_cast<uint8_t>(c4 * Sk4f(255) + Sk4f(0.5f)).store(&c);
return pm.erase(c);
}
const uint64_t half4 = color.premul().toF16();
for (int y = 0; y < pm.height(); ++y) {
sk_memset64(pm.writable_addr64(0, y), half4, pm.width());
}
return true;

View File

@ -1,45 +0,0 @@
# HG changeset patch
# User Mike Hommey <mh+mozilla@glandium.org>
# Date 1479812942 -32400
# Node ID a6d015fd1add5e16cf37f5868cd2734bafb709b4
# Parent 319e03b9e8a22a8fba3756cb1afc8b9e7a6724c8
Bug 1319389 - Generically set SK_CPU_[BL]ENDIAN based on __BYTE_ORDER__ when available. r?jrmuizel
diff --git a/gfx/skia/skia/include/core/SkPreConfig.h b/gfx/skia/skia/include/core/SkPreConfig.h
--- a/gfx/skia/skia/include/core/SkPreConfig.h
+++ b/gfx/skia/skia/include/core/SkPreConfig.h
@@ -67,25 +67,29 @@
#if !defined(SK_WARN_UNUSED_RESULT)
#define SK_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#endif
//////////////////////////////////////////////////////////////////////
#if !defined(SK_CPU_BENDIAN) && !defined(SK_CPU_LENDIAN)
- #if defined(__sparc) || defined(__sparc__) || \
+ #if defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)
+ #define SK_CPU_BENDIAN
+ #elif defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
+ #define SK_CPU_LENDIAN
+ #elif defined(__sparc) || defined(__sparc__) || \
defined(_POWER) || defined(__powerpc__) || \
defined(__ppc__) || defined(__hppa) || \
defined(__PPC__) || defined(__PPC64__) || \
defined(_MIPSEB) || defined(__ARMEB__) || \
defined(__s390__) || \
(defined(__sh__) && defined(__BIG_ENDIAN__)) || \
(defined(__ia64) && defined(__BIG_ENDIAN__))
- #define SK_CPU_BENDIAN
+ #define SK_CPU_BENDIAN
#else
#define SK_CPU_LENDIAN
#endif
#endif
//////////////////////////////////////////////////////////////////////
#if defined(__i386) || defined(_M_IX86) || defined(__x86_64__) || defined(_M_X64)

View File

@ -1,2 +1,2 @@
REV=327e081221b0
REV=44d6a57ab554
REPO=http://hg.mozilla.org/releases/mozilla-release