forked from pool/MozillaFirefox
Accepting request 784530 from mozilla:Factory
- Mozilla Firefox 74.0 * https://www.mozilla.org/en-US/firefox/74.0/releasenotes/ MFSA 2020-08 (bsc#1166238) * CVE-2020-6805 (bmo#1610880) Use-after-free when removing data about origins * CVE-2020-6806 (bmo#1612308) BodyStream::OnInputStreamReady was missing protections against state confusion * CVE-2020-6807 (bmo#1614971) Use-after-free in cubeb during stream destruction * CVE-2020-6808 (bmo#1247968) URL Spoofing via javascript: URL * CVE-2020-6809 (bmo#1420296) Web Extensions with the all-urls permission could access local files * CVE-2020-6810 (bmo#1432856) Focusing a popup while in fullscreen could have obscured the fullscreen notification * CVE-2020-6811 (bmo#1607742) Devtools' 'Copy as cURL' feature did not fully escape website-controlled data, potentially leading to command injection * CVE-2019-20503 (bmo#1613765) Out of bounds reads in sctp_load_addresses_from_init * CVE-2020-6812 (bmo#1616661) The names of AirPods with personally identifiable information were exposed to websites with camera or microphone permission * CVE-2020-6813 (bmo#1605814) @import statements in CSS could bypass the Content Security Policy nonce feature * CVE-2020-6814 (bmo#1592078,bmo#1604847,bmo#1608256,bmo#1612636, OBS-URL: https://build.opensuse.org/request/show/784530 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/MozillaFirefox?expand=0&rev=307
This commit is contained in:
commit
3a194d6cf7
@ -1,3 +1,51 @@
|
||||
-------------------------------------------------------------------
|
||||
Sat Mar 7 08:51:06 UTC 2020 - Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
|
||||
- Mozilla Firefox 74.0
|
||||
* https://www.mozilla.org/en-US/firefox/74.0/releasenotes/
|
||||
MFSA 2020-08 (bsc#1166238)
|
||||
* CVE-2020-6805 (bmo#1610880)
|
||||
Use-after-free when removing data about origins
|
||||
* CVE-2020-6806 (bmo#1612308)
|
||||
BodyStream::OnInputStreamReady was missing protections against
|
||||
state confusion
|
||||
* CVE-2020-6807 (bmo#1614971)
|
||||
Use-after-free in cubeb during stream destruction
|
||||
* CVE-2020-6808 (bmo#1247968)
|
||||
URL Spoofing via javascript: URL
|
||||
* CVE-2020-6809 (bmo#1420296)
|
||||
Web Extensions with the all-urls permission could access local
|
||||
files
|
||||
* CVE-2020-6810 (bmo#1432856)
|
||||
Focusing a popup while in fullscreen could have obscured the
|
||||
fullscreen notification
|
||||
* CVE-2020-6811 (bmo#1607742)
|
||||
Devtools' 'Copy as cURL' feature did not fully escape
|
||||
website-controlled data, potentially leading to command injection
|
||||
* CVE-2019-20503 (bmo#1613765)
|
||||
Out of bounds reads in sctp_load_addresses_from_init
|
||||
* CVE-2020-6812 (bmo#1616661)
|
||||
The names of AirPods with personally identifiable information
|
||||
were exposed to websites with camera or microphone permission
|
||||
* CVE-2020-6813 (bmo#1605814)
|
||||
@import statements in CSS could bypass the Content Security
|
||||
Policy nonce feature
|
||||
* CVE-2020-6814 (bmo#1592078,bmo#1604847,bmo#1608256,bmo#1612636,
|
||||
bmo#1614339)
|
||||
Memory safety bugs fixed in Firefox 74 and Firefox ESR 68.6
|
||||
* CVE-2020-6815 (bmo#1181957,bmo#1557732,bmo#1557739,bmo#1611457,
|
||||
bmo#1612431)
|
||||
Memory and script safety bugs fixed in Firefox 74
|
||||
- requires
|
||||
* NSPR 4.25
|
||||
* NSS 3.50
|
||||
* rust-cbindgen 0.13.0
|
||||
- removed obsolete patches
|
||||
mozilla-bmo1610814.patch
|
||||
mozilla-cubeb-noreturn.patch
|
||||
- add mozilla-bmo1609538.patch to fix wayland issues with mutter 3.36
|
||||
(bmo#1609538, boo#1166471)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 26 08:12:00 UTC 2020 - Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
|
||||
|
@ -18,9 +18,9 @@
|
||||
|
||||
|
||||
# changed with every update
|
||||
%define major 73
|
||||
%define mainver %major.0.1
|
||||
%define orig_version 73.0.1
|
||||
%define major 74
|
||||
%define mainver %major.0
|
||||
%define orig_version 74.0
|
||||
%define orig_suffix %{nil}
|
||||
%define update_channel release
|
||||
%define branding 1
|
||||
@ -83,15 +83,15 @@ BuildRequires: libiw-devel
|
||||
BuildRequires: libnotify-devel
|
||||
BuildRequires: libproxy-devel
|
||||
BuildRequires: makeinfo
|
||||
BuildRequires: mozilla-nspr-devel >= 4.24
|
||||
BuildRequires: mozilla-nss-devel >= 3.49.2
|
||||
BuildRequires: mozilla-nspr-devel >= 4.25
|
||||
BuildRequires: mozilla-nss-devel >= 3.50
|
||||
BuildRequires: nasm >= 2.13
|
||||
BuildRequires: nodejs8 >= 8.11
|
||||
BuildRequires: python-devel
|
||||
BuildRequires: python2-xml
|
||||
BuildRequires: python3 >= 3.5
|
||||
BuildRequires: rust >= 1.39
|
||||
BuildRequires: rust-cbindgen >= 0.12.0
|
||||
BuildRequires: rust-cbindgen >= 0.13.0
|
||||
BuildRequires: startup-notification-devel
|
||||
BuildRequires: unzip
|
||||
BuildRequires: update-desktop-files
|
||||
@ -169,7 +169,6 @@ Patch2: mozilla-kde.patch
|
||||
Patch3: mozilla-ntlm-full-path.patch
|
||||
Patch4: mozilla-aarch64-startup-crash.patch
|
||||
Patch5: mozilla-bmo1463035.patch
|
||||
Patch6: mozilla-cubeb-noreturn.patch
|
||||
Patch7: mozilla-fix-aarch64-libopus.patch
|
||||
Patch8: mozilla-disable-wasm-emulate-arm-unaligned-fp-access.patch
|
||||
Patch9: mozilla-s390-context.patch
|
||||
@ -186,7 +185,7 @@ Patch19: mozilla-bmo1512162.patch
|
||||
Patch20: mozilla-fix-top-level-asm.patch
|
||||
Patch21: mozilla-bmo1504834-part4.patch
|
||||
Patch22: mozilla-bmo849632.patch
|
||||
Patch23: mozilla-bmo1610814.patch
|
||||
Patch23: mozilla-bmo1609538.patch
|
||||
# Firefox/browser
|
||||
Patch101: firefox-kde.patch
|
||||
Patch102: firefox-branded-icons.patch
|
||||
@ -303,7 +302,6 @@ cd $RPM_BUILD_DIR/%{srcname}-%{orig_version}
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
%patch9 -p1
|
||||
@ -327,14 +325,8 @@ cd $RPM_BUILD_DIR/%{srcname}-%{orig_version}
|
||||
%patch101 -p1
|
||||
%patch102 -p1
|
||||
%endif # only_print_mozconfig
|
||||
# Save config.sub to restore it (for aarch64/ppc64le) later, as it is checked with a checksum
|
||||
cp ./third_party/rust/backtrace-sys/src/libbacktrace/config.sub ./third_party/rust/backtrace-sys/src/libbacktrace/config.sub.save
|
||||
cp ./third_party/rust/backtrace-sys/src/libbacktrace/config.guess ./third_party/rust/backtrace-sys/src/libbacktrace/config.guess.save
|
||||
|
||||
%build
|
||||
# Restore config.sub file
|
||||
mv ./third_party/rust/backtrace-sys/src/libbacktrace/config.sub.save ./third_party/rust/backtrace-sys/src/libbacktrace/config.sub
|
||||
mv ./third_party/rust/backtrace-sys/src/libbacktrace/config.guess.save ./third_party/rust/backtrace-sys/src/libbacktrace/config.guess
|
||||
%if !%{with only_print_mozconfig}
|
||||
# no need to add build time to binaries
|
||||
modified="$(sed -n '/^----/n;s/ - .*$//;p;q' "%{_sourcedir}/%{name}.changes")"
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:53415180e74da60fc91700ce1ff33bf5b6f51e65353017a98270899a08e0c3d2
|
||||
size 326596084
|
@ -1,16 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAABCgAdFiEECXsxMHeuYqAvhNpN8aZmj7t9Vy4FAl5K6J0ACgkQ8aZmj7t9
|
||||
Vy7/lhAAo44llSfwisveJn+KWZDQklbeuamHqcCW8E8hBvGmwd5nruKdipVQxuXY
|
||||
0G/gRi2G365dn179JqY8F0AoYVJMrQ5AeO5CjxSsxb0AkQESlx2GGrTunglLpFNn
|
||||
C32LRYo9jjKorxXfoJ6hf2u7ObZb0PPilcAOJUXHAcsSc3/cbRAm/TBgkfgM2JRZ
|
||||
pbMaCy49IjWcbSKYsT+w7UEcDV9pb3pLTYDibhUVq8BWFjgmnrv1CwylEAkNbgFr
|
||||
5Z6IQ8DSpylruvez98gBWnl6ao6LtiOxSx+t572v94QTHjBB4RJr7n4Q057hp802
|
||||
AbLmBbczF4Dru0NdufBszOZyuPArzLN5e77XtdVcocW2gygUTrXGI5ch0/DTd/0t
|
||||
m2oZ6AykaZhMXUMkkKxd+1nXPv0RGl6TzduDDzyr9x0gUrjNCrehVOLNfBwlo8Wa
|
||||
u2fSwO1CIQ6Umep6TNjMhnpTLPYhoudZTAATaqgz4ykMQhEQARIhnMw+DOMB9vk3
|
||||
ekZARU/bKWH4M6QeJxDfTvdLSv41YJzUWCuLfhDDMZ+egS+9Qa5KGvUaLdJdPLvq
|
||||
RqlMmoyfW8K+ZTMViyBoiC6ezGQTRkQdXHiiIVG2t9IHkqGuodKpCmtX1eoYWBrd
|
||||
ths+kKz3n+BdG454A8FlQ4NfttatDVl5oytn228Z1O1uIo4+lIA=
|
||||
=JftP
|
||||
-----END PGP SIGNATURE-----
|
3
firefox-74.0.source.tar.xz
Normal file
3
firefox-74.0.source.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:74589c2836d7c30134636823c3caefbcaed0ea7c3abb2def9e3ddd9f86d9440a
|
||||
size 320001124
|
16
firefox-74.0.source.tar.xz.asc
Normal file
16
firefox-74.0.source.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAABCgAdFiEECXsxMHeuYqAvhNpN8aZmj7t9Vy4FAl5mQjEACgkQ8aZmj7t9
|
||||
Vy6NdA/+MovzK1fMaGFt2GsRghoFywbvaN7f4Enc5mmCW1NZ3BEMsxuK/sv1ttfN
|
||||
qEGkssF+taAwo2N7M7MUhD17CsXZiR7cLMhRlFW30PFXWB568F93tH8dounxfYKD
|
||||
g+WTsjWK8McQHA3hvx0vpcbGT/K6vEK+AGY+g1kvy70H8Zcd6AzgdDpHK4I6uP9S
|
||||
I8cPuAYaUgkQn+Woi5ejTUR8yCXSWxmc99UvmCjsPd/cCI3hvH4JaGbyGTqz+nQL
|
||||
XDNC7JIMN9xx98oLHf/r4ZGKgSrT98QFShKNvbNdXUSuZrf8y9df/fWnQY8WMPxm
|
||||
FuhLVJ2yXalmbkt5k3OVA8TjYan7nbOEav/y4C2blmQKFlu1XQb0KfbZdhrP7Xt0
|
||||
Y5auzUHXNPvHlSodkcyK0fHsY3IyF86Rxpj0NVEIbylTcqKLdixEkQzFv6gxV1hG
|
||||
COc03+A7qMbFEGqu78bo16X8U3Eo+qLUx4cNbBdbmr5hceqWcoy0MDN8md6HQJXn
|
||||
7gGGT5z2RC+l9R0imRDxmf96GvuIN7MGlWC3TU3WQSyAxv0H8tVPThx8oa9Z87Fb
|
||||
YS1Zxp90W5USGYkqTSnPGlsopf1mGccJR01Rw3StR5oTB7CxsHdmlWrpeoVVeR5D
|
||||
GiONh0/dAl3TJdfanVuvwZLdcyN/Tiw0bJi2mccmKRCLcsxGykQ=
|
||||
=tfW0
|
||||
-----END PGP SIGNATURE-----
|
@ -1,6 +1,6 @@
|
||||
# HG changeset patch
|
||||
# Parent e0751ad74e835e80041a61ea00c2a63bf6fbe2de
|
||||
# Parent 127964dc93cc35715852bc811dcc67016d918628
|
||||
# Parent 91064bb25b378c1fdcc2d99a89aeaf5e821b1689
|
||||
|
||||
diff --git a/browser/branding/branding-common.mozbuild b/browser/branding/branding-common.mozbuild
|
||||
--- a/browser/branding/branding-common.mozbuild
|
||||
@ -24,7 +24,7 @@ diff --git a/browser/branding/branding-common.mozbuild b/browser/branding/brandi
|
||||
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
|
||||
@@ -246,20 +246,23 @@
|
||||
@@ -249,20 +249,23 @@
|
||||
@RESPATH@/browser/chrome/pdfjs.manifest
|
||||
@RESPATH@/browser/chrome/pdfjs/*
|
||||
@RESPATH@/chrome/toolkit@JAREXT@
|
||||
|
@ -3,7 +3,7 @@
|
||||
# Date 1559300151 -7200
|
||||
# Fri May 31 12:55:51 2019 +0200
|
||||
# Node ID 54d41b0033b8d649d842a1f862c6fed8b9874dec
|
||||
# Parent 1143a0e4b2eefa83f74fc484c547d7790ca455a1
|
||||
# Parent 5db49d25901f390e985c8e4bb5e0ec0b22cadeec
|
||||
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 @@ How to apply this patch:
|
||||
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
|
||||
@@ -329,16 +329,23 @@ var gMainPane = {
|
||||
@@ -333,16 +333,23 @@ var gMainPane = {
|
||||
}, backoffTimes[this._backoffIndex + 1 < backoffTimes.length ? this._backoffIndex++ : backoffTimes.length - 1]);
|
||||
};
|
||||
|
||||
@ -38,7 +38,7 @@ diff --git a/browser/components/preferences/in-content/main.js b/browser/compone
|
||||
);
|
||||
let performanceSettingsUrl =
|
||||
Services.urlFormatter.formatURLPref("app.support.baseURL") +
|
||||
@@ -1283,16 +1290,27 @@ var gMainPane = {
|
||||
@@ -1296,16 +1303,27 @@ var gMainPane = {
|
||||
this._backoffIndex = 0;
|
||||
|
||||
let shellSvc = getShellService();
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f39f1ea6f6dbc7dafb05a744f622648c6ea1115e33aed2f15238321992026736
|
||||
size 51248012
|
3
l10n-74.0.tar.xz
Normal file
3
l10n-74.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:316eaf6b977d188816230e2928e6943848fb44d9b545203a5871ebb89fa42885
|
||||
size 51400288
|
@ -3,14 +3,19 @@
|
||||
# Date 1558442998 -7200
|
||||
# Tue May 21 14:49:58 2019 +0200
|
||||
# Node ID 386083b58d8558141901d796ec6919a4aba7ad3a
|
||||
# Parent 835641be7eb9408aa1eff0d38b37f6c523d2ef98
|
||||
# Parent a30a9b9aae5740f096a16118ed9e4bc45d3d1c35
|
||||
bsc#991344 - Rpi3: Firefox crashes after a few seconds of usage
|
||||
bmo#1302554 - ARM/AARCH64: Firefox crashes on NULL nsIChannel** result pointer in nsIOService::NewChannelFromURIWithProxyFlagsInternal()
|
||||
|
||||
diff -r 835641be7eb9 -r 386083b58d85 netwerk/base/nsIOService.cpp
|
||||
--- a/netwerk/base/nsIOService.cpp Fri Feb 26 16:20:09 2016 +0000
|
||||
+++ b/netwerk/base/nsIOService.cpp Tue May 21 14:49:58 2019 +0200
|
||||
@@ -1000,7 +1000,13 @@
|
||||
diff --git a/netwerk/base/nsIOService.cpp b/netwerk/base/nsIOService.cpp
|
||||
--- a/netwerk/base/nsIOService.cpp
|
||||
+++ b/netwerk/base/nsIOService.cpp
|
||||
@@ -1032,17 +1032,23 @@ nsresult nsIOService::NewChannelFromURIW
|
||||
"doesn't support nsIUploadChannel2. An extension has "
|
||||
"supplied a non-functional http protocol handler. This will "
|
||||
"break behavior and in future releases not work at all.");
|
||||
}
|
||||
gHasWarnedUploadChannel2 = true;
|
||||
}
|
||||
}
|
||||
|
||||
@ -24,3 +29,8 @@ diff -r 835641be7eb9 -r 386083b58d85 netwerk/base/nsIOService.cpp
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsIOService::NewChannelFromURIWithProxyFlags(
|
||||
nsIURI* aURI, nsIURI* aProxyURI, uint32_t aProxyFlags,
|
||||
nsINode* aLoadingNode, nsIPrincipal* aLoadingPrincipal,
|
||||
nsIPrincipal* aTriggeringPrincipal, uint32_t aSecurityFlags,
|
||||
|
@ -3,13 +3,18 @@
|
||||
# Date 1558451540 -7200
|
||||
# Tue May 21 17:12:20 2019 +0200
|
||||
# Node ID 433beec63e6b5f409683af20a0c1ab137cc7bfad
|
||||
# Parent 0b9b94a6526d4f1aa6e23b95c1f5f7c0bef841a7
|
||||
# Parent c0fdccc716e80a6d289c94f5d507ae141c62a3bf
|
||||
Bug 1005535 - Get skia GPU building on big endian.
|
||||
|
||||
diff -r 0b9b94a6526d gfx/skia/skia/src/gpu/GrColor.h
|
||||
--- a/gfx/skia/skia/src/gpu/GrColor.h Tue May 21 17:26:58 2019 +0200
|
||||
+++ b/gfx/skia/skia/src/gpu/GrColor.h Wed Jan 08 12:14:52 2020 +0100
|
||||
@@ -64,7 +64,7 @@
|
||||
diff --git a/gfx/skia/skia/src/gpu/GrColor.h b/gfx/skia/skia/src/gpu/GrColor.h
|
||||
--- a/gfx/skia/skia/src/gpu/GrColor.h
|
||||
+++ b/gfx/skia/skia/src/gpu/GrColor.h
|
||||
@@ -59,17 +59,17 @@ static inline GrColor GrColorPackRGBA(un
|
||||
#define GrColorUnpackG(color) (((color) >> GrColor_SHIFT_G) & 0xFF)
|
||||
#define GrColorUnpackB(color) (((color) >> GrColor_SHIFT_B) & 0xFF)
|
||||
#define GrColorUnpackA(color) (((color) >> GrColor_SHIFT_A) & 0xFF)
|
||||
|
||||
/**
|
||||
* Since premultiplied means that alpha >= color, we construct a color with
|
||||
* each component==255 and alpha == 0 to be "illegal"
|
||||
*/
|
||||
@ -18,3 +23,8 @@ diff -r 0b9b94a6526d gfx/skia/skia/src/gpu/GrColor.h
|
||||
|
||||
/** Normalizes and coverts an uint8_t to a float. [0, 255] -> [0.0, 1.0] */
|
||||
static inline float GrNormalizeByteToFloat(uint8_t value) {
|
||||
static const float ONE_OVER_255 = 1.f / 255.f;
|
||||
return value * ONE_OVER_255;
|
||||
}
|
||||
|
||||
/** Used to pick vertex attribute types. */
|
||||
|
@ -3,7 +3,7 @@
|
||||
# User Mike Hommey <mh+mozilla@glandium.org>
|
||||
# Date 1526871862 -32400
|
||||
# Node ID 94f21505ff13cd089f7129cd24927cf8b31a0f43
|
||||
# Parent c2f46e526e92a1706d445f8e38a68bf90aee06f3
|
||||
# Parent 71b9d492b739602dbfe713fd4de3205e9d485f18
|
||||
Bug 1463035 - Remove MOZ_SIGNAL_TRAMPOLINE. r?darchons
|
||||
|
||||
For some reason, GNU as is not happy with the assembly generated after
|
||||
@ -15,7 +15,7 @@ workaround anymore, so let's just kill it.
|
||||
diff --git a/mfbt/moz.build b/mfbt/moz.build
|
||||
--- a/mfbt/moz.build
|
||||
+++ b/mfbt/moz.build
|
||||
@@ -132,20 +132,16 @@ EXPORTS["double-conversion"] = [
|
||||
@@ -131,20 +131,16 @@ EXPORTS["double-conversion"] = [
|
||||
LOCAL_INCLUDES += [
|
||||
'/mfbt/double-conversion',
|
||||
]
|
||||
|
@ -1,11 +1,11 @@
|
||||
# HG changeset patch
|
||||
# Parent 9db312f823881c04c5c16a7623df08cf6aef371d
|
||||
# Parent b5471d23321d16a0bacc25b7afd27d2e16adba1a
|
||||
Taken from https://bugzilla.mozilla.org/show_bug.cgi?id=1504834
|
||||
|
||||
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
|
||||
@@ -130,18 +130,17 @@ static IntRect CalculateSurfaceBounds(co
|
||||
Rect sampledBounds = inverse.TransformBounds(*aBounds);
|
||||
if (!sampledBounds.ToIntRect(&bounds)) {
|
||||
return surfaceBounds;
|
||||
@ -28,7 +28,7 @@ diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp
|
||||
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 {
|
||||
@@ -84,25 +84,18 @@ enum class SurfaceFormat : int8_t {
|
||||
Depth,
|
||||
|
||||
// This represents the unknown format.
|
||||
|
@ -1,14 +1,19 @@
|
||||
# HG changeset patch
|
||||
# Parent 0e579dcbf7328dda4512cbdafc9b42acec4935ea
|
||||
# Parent 9319844dca3133fa8bd7107079f1d1ddc5c0bf70
|
||||
Skia does not support big endian. The places to fix are too numerous and upstream (skia, not Mozilla)
|
||||
has no interest in maintaining big endian.
|
||||
So here we try to swizzle the input for skia, so that skia always works on LE, and when it comes
|
||||
out again, we transform back to BE.
|
||||
|
||||
diff -r 0e579dcbf732 gfx/2d/ConvolutionFilter.cpp
|
||||
--- a/gfx/2d/ConvolutionFilter.cpp Wed Jan 08 12:17:44 2020 +0100
|
||||
+++ b/gfx/2d/ConvolutionFilter.cpp Wed Jan 08 12:17:49 2020 +0100
|
||||
@@ -35,9 +35,38 @@
|
||||
diff --git a/gfx/2d/ConvolutionFilter.cpp b/gfx/2d/ConvolutionFilter.cpp
|
||||
--- a/gfx/2d/ConvolutionFilter.cpp
|
||||
+++ b/gfx/2d/ConvolutionFilter.cpp
|
||||
@@ -29,32 +29,79 @@ bool ConvolutionFilter::GetFilterOffsetA
|
||||
int32_t* aResultLength) {
|
||||
if (aRowIndex >= mFilter->numValues()) {
|
||||
return false;
|
||||
}
|
||||
mFilter->FilterForValue(aRowIndex, aResultOffset, aResultLength);
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -47,7 +52,11 @@ diff -r 0e579dcbf732 gfx/2d/ConvolutionFilter.cpp
|
||||
}
|
||||
|
||||
void ConvolutionFilter::ConvolveVertically(uint8_t* const* aSrc, uint8_t* aDst,
|
||||
@@ -49,8 +78,26 @@
|
||||
int32_t aRowIndex, int32_t aRowSize,
|
||||
bool aHasAlpha) {
|
||||
MOZ_ASSERT(aRowIndex < mFilter->numValues());
|
||||
|
||||
int32_t filterOffset;
|
||||
int32_t filterLength;
|
||||
auto filterValues =
|
||||
mFilter->FilterForValue(aRowIndex, &filterOffset, &filterLength);
|
||||
@ -74,10 +83,20 @@ diff -r 0e579dcbf732 gfx/2d/ConvolutionFilter.cpp
|
||||
}
|
||||
|
||||
/* ConvolutionFilter::ComputeResizeFactor is derived from Skia's
|
||||
diff -r 0e579dcbf732 gfx/skia/skia/include/core/SkPreConfig.h
|
||||
--- a/gfx/skia/skia/include/core/SkPreConfig.h Wed Jan 08 12:17:44 2020 +0100
|
||||
+++ b/gfx/skia/skia/include/core/SkPreConfig.h Wed Jan 08 12:17:49 2020 +0100
|
||||
@@ -73,7 +73,7 @@
|
||||
* SkBitmapScaler/SkResizeFilter::computeFactors. It is governed by Skia's
|
||||
* BSD-style license (see gfx/skia/LICENSE) and the following copyright:
|
||||
* Copyright (c) 2015 Google Inc.
|
||||
*/
|
||||
bool ConvolutionFilter::ComputeResizeFilter(ResizeMethod aResizeMethod,
|
||||
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
|
||||
@@ -68,17 +68,17 @@
|
||||
#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__) || \
|
||||
@ -86,3 +105,8 @@ diff -r 0e579dcbf732 gfx/skia/skia/include/core/SkPreConfig.h
|
||||
(defined(__sh__) && defined(__BIG_ENDIAN__)) || \
|
||||
(defined(__ia64) && defined(__BIG_ENDIAN__))
|
||||
#define SK_CPU_BENDIAN
|
||||
#else
|
||||
#define SK_CPU_LENDIAN
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
@ -1,12 +1,17 @@
|
||||
# HG changeset patch
|
||||
# Parent aecb4600e5da17443b224c79eee178c1d8e155e3
|
||||
# Parent d1d66f7e4d0e7fd45e91e4fcee07555e72046d48
|
||||
For FF68, AntiAliasing of XULTexts seem to be broken on big endian (s390x). Text and icons of the sandwich-menu to the
|
||||
right of the address bar, as well as plugin-windows appears transparant, which usually means unreadable (white on white).
|
||||
|
||||
diff -r aecb4600e5da gfx/skia/skia/include/private/SkNx.h
|
||||
--- a/gfx/skia/skia/include/private/SkNx.h Tue Aug 20 09:46:55 2019 +0200
|
||||
+++ b/gfx/skia/skia/include/private/SkNx.h Mon Sep 09 10:04:06 2019 +0200
|
||||
@@ -238,7 +238,18 @@
|
||||
diff --git a/gfx/skia/skia/include/private/SkNx.h b/gfx/skia/skia/include/private/SkNx.h
|
||||
--- a/gfx/skia/skia/include/private/SkNx.h
|
||||
+++ b/gfx/skia/skia/include/private/SkNx.h
|
||||
@@ -233,17 +233,28 @@ struct SkNx<1,T> {
|
||||
AI SkNx operator<<(int bits) const { return fVal << bits; }
|
||||
AI SkNx operator>>(int bits) const { return fVal >> bits; }
|
||||
|
||||
AI SkNx operator+(const SkNx& y) const { return fVal + y.fVal; }
|
||||
AI SkNx operator-(const SkNx& y) const { return fVal - y.fVal; }
|
||||
AI SkNx operator*(const SkNx& y) const { return fVal * y.fVal; }
|
||||
AI SkNx operator/(const SkNx& y) const { return fVal / y.fVal; }
|
||||
|
||||
@ -25,10 +30,20 @@ diff -r aecb4600e5da gfx/skia/skia/include/private/SkNx.h
|
||||
AI SkNx operator|(const SkNx& y) const { return FromBits(ToBits(fVal) | ToBits(y.fVal)); }
|
||||
AI SkNx operator^(const SkNx& y) const { return FromBits(ToBits(fVal) ^ ToBits(y.fVal)); }
|
||||
|
||||
diff -r aecb4600e5da gfx/skia/skia/src/opts/SkBlitMask_opts.h
|
||||
--- a/gfx/skia/skia/src/opts/SkBlitMask_opts.h Tue Aug 20 09:46:55 2019 +0200
|
||||
+++ b/gfx/skia/skia/src/opts/SkBlitMask_opts.h Mon Sep 09 10:04:06 2019 +0200
|
||||
@@ -203,7 +203,13 @@
|
||||
AI SkNx operator==(const SkNx& y) const { return FromBits(fVal == y.fVal ? ~0 : 0); }
|
||||
AI SkNx operator!=(const SkNx& y) const { return FromBits(fVal != y.fVal ? ~0 : 0); }
|
||||
AI SkNx operator<=(const SkNx& y) const { return FromBits(fVal <= y.fVal ? ~0 : 0); }
|
||||
AI SkNx operator>=(const SkNx& y) const { return FromBits(fVal >= y.fVal ? ~0 : 0); }
|
||||
AI SkNx operator< (const SkNx& y) const { return FromBits(fVal < y.fVal ? ~0 : 0); }
|
||||
diff --git a/gfx/skia/skia/src/opts/SkBlitMask_opts.h b/gfx/skia/skia/src/opts/SkBlitMask_opts.h
|
||||
--- a/gfx/skia/skia/src/opts/SkBlitMask_opts.h
|
||||
+++ b/gfx/skia/skia/src/opts/SkBlitMask_opts.h
|
||||
@@ -198,17 +198,23 @@ namespace SK_OPTS_NS {
|
||||
const SkAlpha* mask, size_t maskRB,
|
||||
int w, int h) {
|
||||
auto fn = [](const Sk4px& d, const Sk4px& aa) {
|
||||
// = (s + d(1-sa))aa + d(1-aa)
|
||||
// = s*aa + d(1-sa*aa)
|
||||
// ~~~>
|
||||
// a = 1*aa + d(1-1*aa) = aa + d(1-aa)
|
||||
// c = 0*aa + d(1-1*aa) = d(1-aa)
|
||||
@ -42,3 +57,8 @@ diff -r aecb4600e5da gfx/skia/skia/src/opts/SkBlitMask_opts.h
|
||||
+ d.approxMulDiv255(aa.inv());
|
||||
};
|
||||
while (h --> 0) {
|
||||
Sk4px::MapDstAlpha(w, dst, mask, fn);
|
||||
dst += dstRB / sizeof(*dst);
|
||||
mask += maskRB / sizeof(*mask);
|
||||
}
|
||||
}
|
||||
|
@ -1,19 +1,24 @@
|
||||
# HG changeset patch
|
||||
# Parent 46ea866ca3acb8bb5e1709ceb799b9c94f591dec
|
||||
# Parent 883d2c7fec80b9714ccfefa461a02f5b09e3ee09
|
||||
Problem description: Tab-titles that are too long to fit into a tab get faded out.
|
||||
On big endian this is broken and instead of fading out, the
|
||||
On big endian this is broken and instead of fading out, the
|
||||
tab gets white and the font transparent, leading to an unreadable
|
||||
tab-title
|
||||
Solution: This is not a real solution, but a hack. The real solution would have been
|
||||
to byte-swap the correct buffer, but I could not find it.
|
||||
So the next best thing is to deactivate the fading-effect. Now all tab-titles
|
||||
are readable, albeit not as pretty to look at as they could be.
|
||||
are readable, albeit not as pretty to look at as they could be.
|
||||
Side-effects: I have not yet found an unwanted side-effect.
|
||||
|
||||
diff -r 46ea866ca3ac -r 6ef20eee3f8f gfx/2d/DrawTargetSkia.cpp
|
||||
--- a/gfx/2d/DrawTargetSkia.cpp Tue Oct 22 12:27:22 2019 +0200
|
||||
+++ b/gfx/2d/DrawTargetSkia.cpp Thu Oct 31 09:11:56 2019 +0100
|
||||
@@ -1861,6 +1861,14 @@
|
||||
diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp
|
||||
--- a/gfx/2d/DrawTargetSkia.cpp
|
||||
+++ b/gfx/2d/DrawTargetSkia.cpp
|
||||
@@ -1856,16 +1856,24 @@ void DrawTargetSkia::PushLayerWithBlend(
|
||||
}
|
||||
|
||||
SkCanvas::SaveLayerRec saveRec(
|
||||
aBounds.IsEmpty() ? nullptr : &bounds, &paint, nullptr, clipImage.get(),
|
||||
&clipMatrix,
|
||||
SkCanvas::kPreserveLCDText_SaveLayerFlag |
|
||||
(aCopyBackground ? SkCanvas::kInitWithPrevious_SaveLayerFlag : 0));
|
||||
|
||||
@ -28,3 +33,8 @@ diff -r 46ea866ca3ac -r 6ef20eee3f8f gfx/2d/DrawTargetSkia.cpp
|
||||
mCanvas->saveLayer(saveRec);
|
||||
|
||||
SetPermitSubpixelAA(aOpaque);
|
||||
|
||||
#ifdef MOZ_WIDGET_COCOA
|
||||
CGContextRelease(mCG);
|
||||
mCG = nullptr;
|
||||
#endif
|
||||
|
@ -1,12 +1,17 @@
|
||||
# HG changeset patch
|
||||
# Parent e5858dc7ab007042436496f7cfb9a5abf10f5082
|
||||
# Parent e42a036a5533ea6a60ebc22fd2a150c384d42fda
|
||||
This fixes a broken build for gcc < 9 on ppc64le.
|
||||
This patch can be removed for newer gcc-versions.
|
||||
|
||||
diff -r e5858dc7ab00 -r 5d3469aabe61 js/xpconnect/src/XPCWrappedNative.cpp
|
||||
--- a/js/xpconnect/src/XPCWrappedNative.cpp Thu Nov 29 10:07:29 2018 +0100
|
||||
+++ b/js/xpconnect/src/XPCWrappedNative.cpp Tue Sep 10 12:42:13 2019 +0200
|
||||
@@ -1092,7 +1092,11 @@
|
||||
diff --git a/js/xpconnect/src/XPCWrappedNative.cpp b/js/xpconnect/src/XPCWrappedNative.cpp
|
||||
--- a/js/xpconnect/src/XPCWrappedNative.cpp
|
||||
+++ b/js/xpconnect/src/XPCWrappedNative.cpp
|
||||
@@ -1080,17 +1080,21 @@ class MOZ_STACK_CLASS CallMethodHelper f
|
||||
uint32_t* result);
|
||||
|
||||
MOZ_ALWAYS_INLINE bool GetInterfaceTypeFromParam(const nsXPTType& type,
|
||||
nsID* result) const;
|
||||
|
||||
MOZ_ALWAYS_INLINE bool GetOutParamSource(uint8_t paramIndex,
|
||||
MutableHandleValue srcp) const;
|
||||
|
||||
@ -19,7 +24,17 @@ diff -r e5858dc7ab00 -r 5d3469aabe61 js/xpconnect/src/XPCWrappedNative.cpp
|
||||
|
||||
MOZ_ALWAYS_INLINE bool QueryInterfaceFastPath();
|
||||
|
||||
@@ -1139,7 +1143,11 @@
|
||||
nsXPTCVariant* GetDispatchParam(uint8_t paramIndex) {
|
||||
if (paramIndex >= mJSContextIndex) {
|
||||
paramIndex += 1;
|
||||
}
|
||||
if (paramIndex >= mOptArgcIndex) {
|
||||
@@ -1127,17 +1131,21 @@ class MOZ_STACK_CLASS CallMethodHelper f
|
||||
|
||||
{
|
||||
// Success checked later.
|
||||
mIFaceInfo->GetMethodInfo(mVTableIndex, &mMethodInfo);
|
||||
}
|
||||
|
||||
~CallMethodHelper();
|
||||
|
||||
@ -32,3 +47,8 @@ diff -r e5858dc7ab00 -r 5d3469aabe61 js/xpconnect/src/XPCWrappedNative.cpp
|
||||
|
||||
// Trace implementation so we can put our CallMethodHelper in a Rooted<T>.
|
||||
void trace(JSTracer* aTrc);
|
||||
};
|
||||
|
||||
// static
|
||||
bool XPCWrappedNative::CallMethod(XPCCallContext& ccx,
|
||||
CallMode mode /*= CALL_METHOD */) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
# HG changeset patch
|
||||
# Parent a25cebecb02d5460b8ad757fe9cb4a9c8d1d7658
|
||||
# Parent 38d48db62539afe61d542c9d21e32d57d4b00a73
|
||||
Eliminate startup error message:
|
||||
JavaScript error: , line 0: Error: Type error for platformInfo value (Error processing arch: Invalid enumeration value "s390x") for runtime.getPlatformInfo.
|
||||
|
||||
@ -8,10 +8,15 @@ Reported here: https://bugzilla.mozilla.org/show_bug.cgi?id=1554971
|
||||
Uncertain if this is causing real problems or not. Also uncertain if the fix actually fixes anything.
|
||||
No response from upstream yet.
|
||||
|
||||
diff -r a25cebecb02d -r 378b81b00e73 toolkit/components/extensions/schemas/runtime.json
|
||||
--- a/toolkit/components/extensions/schemas/runtime.json Fri Jul 05 12:42:44 2019 +0200
|
||||
+++ b/toolkit/components/extensions/schemas/runtime.json Fri Jul 19 13:19:30 2019 +0200
|
||||
@@ -64,7 +64,7 @@
|
||||
diff --git a/toolkit/components/extensions/schemas/runtime.json b/toolkit/components/extensions/schemas/runtime.json
|
||||
--- a/toolkit/components/extensions/schemas/runtime.json
|
||||
+++ b/toolkit/components/extensions/schemas/runtime.json
|
||||
@@ -59,17 +59,17 @@
|
||||
"type": "string",
|
||||
"allowedContexts": ["content", "devtools"],
|
||||
"description": "The operating system the browser is running on.",
|
||||
"enum": ["mac", "win", "android", "cros", "linux", "openbsd"]
|
||||
},
|
||||
{
|
||||
"id": "PlatformArch",
|
||||
"type": "string",
|
||||
@ -20,3 +25,8 @@ diff -r a25cebecb02d -r 378b81b00e73 toolkit/components/extensions/schemas/runti
|
||||
"allowedContexts": ["content", "devtools"],
|
||||
"description": "The machine's processor architecture."
|
||||
},
|
||||
{
|
||||
"id": "PlatformInfo",
|
||||
"type": "object",
|
||||
"allowedContexts": ["content", "devtools"],
|
||||
"description": "An object containing information about the current platform.",
|
||||
|
@ -8,10 +8,14 @@ and https://reproducible-builds.org/specs/source-date-epoch/
|
||||
for the definition of this variable.
|
||||
|
||||
diff --git a/python/mozbuild/mozbuild/action/langpack_manifest.py b/python/mozbuild/mozbuild/action/langpack_manifest.py
|
||||
index 6f72697..d4cca96 100644
|
||||
--- a/python/mozbuild/mozbuild/action/langpack_manifest.py
|
||||
+++ b/python/mozbuild/mozbuild/action/langpack_manifest.py
|
||||
@@ -16,6 +16,7 @@ import os
|
||||
@@ -11,16 +11,17 @@
|
||||
from __future__ import absolute_import, print_function
|
||||
|
||||
import argparse
|
||||
import sys
|
||||
import os
|
||||
import json
|
||||
import io
|
||||
import datetime
|
||||
@ -19,7 +23,17 @@ index 6f72697..d4cca96 100644
|
||||
import requests
|
||||
import mozversioncontrol
|
||||
import mozpack.path as mozpath
|
||||
@@ -100,7 +101,7 @@ def get_timestamp_for_locale(path):
|
||||
from mozpack.chrome.manifest import (
|
||||
Manifest,
|
||||
ManifestLocale,
|
||||
parse_manifest,
|
||||
)
|
||||
@@ -94,17 +95,17 @@ def get_dt_from_hg(path):
|
||||
# ts == "20170914215617"
|
||||
###
|
||||
def get_timestamp_for_locale(path):
|
||||
dt = None
|
||||
if os.path.isdir(os.path.join(path, '.hg')):
|
||||
dt = get_dt_from_hg(path)
|
||||
|
||||
if dt is None:
|
||||
@ -28,3 +42,8 @@ index 6f72697..d4cca96 100644
|
||||
|
||||
dt = dt.replace(microsecond=0)
|
||||
return dt.strftime("%Y%m%d%H%M%S")
|
||||
|
||||
|
||||
###
|
||||
# Parses multiple defines files into a single key-value pair object.
|
||||
#
|
||||
|
191
mozilla-bmo1609538.patch
Normal file
191
mozilla-bmo1609538.patch
Normal file
@ -0,0 +1,191 @@
|
||||
# HG changeset patch
|
||||
# Parent 047fa9d20b78759029e87c48f0d64f819e889e4c
|
||||
|
||||
diff --git a/widget/gtk/mozcontainer.cpp b/widget/gtk/mozcontainer.cpp
|
||||
--- a/widget/gtk/mozcontainer.cpp
|
||||
+++ b/widget/gtk/mozcontainer.cpp
|
||||
@@ -159,23 +159,25 @@ void moz_container_move(MozContainer* co
|
||||
|
||||
// Wayland subsurface is not created yet.
|
||||
if (!container->subsurface) {
|
||||
return;
|
||||
}
|
||||
|
||||
// wl_subsurface_set_position is actually property of parent surface
|
||||
// which is effective when parent surface is commited.
|
||||
- wl_surface* parent_surface =
|
||||
- moz_gtk_widget_get_wl_surface(GTK_WIDGET(container));
|
||||
- if (parent_surface) {
|
||||
- wl_subsurface_set_position(container->subsurface, container->subsurface_dx,
|
||||
- container->subsurface_dy);
|
||||
- wl_surface_commit(parent_surface);
|
||||
- container->surface_position_needs_update = false;
|
||||
+ wl_subsurface_set_position(container->subsurface, container->subsurface_dx,
|
||||
+ container->subsurface_dy);
|
||||
+ container->surface_position_needs_update = false;
|
||||
+
|
||||
+ GdkWindow* window = gtk_widget_get_window(GTK_WIDGET(container));
|
||||
+ if (window) {
|
||||
+ GdkRectangle rect = (GdkRectangle){0, 0, gdk_window_get_width(window),
|
||||
+ gdk_window_get_height(window)};
|
||||
+ gdk_window_invalidate_rect(window, &rect, false);
|
||||
}
|
||||
}
|
||||
|
||||
// This is called from layout/compositor code only with
|
||||
// size equal to GL rendering context. Otherwise there are
|
||||
// rendering artifacts as wl_egl_window size does not match
|
||||
// GL rendering pipeline setup.
|
||||
void moz_container_egl_window_set_size(MozContainer* container, int width,
|
||||
@@ -217,16 +219,17 @@ void moz_container_init(MozContainer* co
|
||||
container->subsurface = nullptr;
|
||||
container->eglwindow = nullptr;
|
||||
container->frame_callback_handler = nullptr;
|
||||
container->frame_callback_handler_surface_id = -1;
|
||||
// We can draw to x11 window any time.
|
||||
container->ready_to_draw = gfxPlatformGtk::GetPlatform()->IsX11Display();
|
||||
container->opaque_region_needs_update = false;
|
||||
container->opaque_region_subtract_corners = false;
|
||||
+ container->opaque_region_fullscreen = false;
|
||||
container->surface_needs_clear = true;
|
||||
container->subsurface_dx = 0;
|
||||
container->subsurface_dy = 0;
|
||||
container->surface_position_needs_update = 0;
|
||||
container->initial_draw_cbs.clear();
|
||||
#endif
|
||||
|
||||
LOG(("%s [%p]\n", __FUNCTION__, (void*)container));
|
||||
@@ -569,22 +572,26 @@ static void moz_container_add(GtkContain
|
||||
moz_container_put(MOZ_CONTAINER(container), widget, 0, 0);
|
||||
}
|
||||
|
||||
#ifdef MOZ_WAYLAND
|
||||
static void moz_container_set_opaque_region(MozContainer* container) {
|
||||
GtkAllocation allocation;
|
||||
gtk_widget_get_allocation(GTK_WIDGET(container), &allocation);
|
||||
|
||||
- // Set region to mozcontainer which does not have any offset
|
||||
- wl_region* region =
|
||||
- CreateOpaqueRegionWayland(0, 0, allocation.width, allocation.height,
|
||||
- container->opaque_region_subtract_corners);
|
||||
- wl_surface_set_opaque_region(container->surface, region);
|
||||
- wl_region_destroy(region);
|
||||
+ // Set region to mozcontainer for normal state only
|
||||
+ if (!container->opaque_region_fullscreen) {
|
||||
+ wl_region* region =
|
||||
+ CreateOpaqueRegionWayland(0, 0, allocation.width, allocation.height,
|
||||
+ container->opaque_region_subtract_corners);
|
||||
+ wl_surface_set_opaque_region(container->surface, region);
|
||||
+ wl_region_destroy(region);
|
||||
+ } else {
|
||||
+ wl_surface_set_opaque_region(container->surface, nullptr);
|
||||
+ }
|
||||
}
|
||||
|
||||
struct wl_surface* moz_container_get_wl_surface(MozContainer* container) {
|
||||
LOGWAYLAND(("%s [%p] surface %p ready_to_draw %d\n", __FUNCTION__,
|
||||
(void*)container, (void*)container->surface,
|
||||
container->ready_to_draw));
|
||||
|
||||
if (!container->surface) {
|
||||
@@ -670,17 +677,19 @@ gboolean moz_container_has_wl_egl_window
|
||||
|
||||
gboolean moz_container_surface_needs_clear(MozContainer* container) {
|
||||
int ret = container->surface_needs_clear;
|
||||
container->surface_needs_clear = false;
|
||||
return ret;
|
||||
}
|
||||
|
||||
void moz_container_update_opaque_region(MozContainer* container,
|
||||
- bool aSubtractCorners) {
|
||||
+ bool aSubtractCorners,
|
||||
+ bool aFullScreen) {
|
||||
container->opaque_region_needs_update = true;
|
||||
container->opaque_region_subtract_corners = aSubtractCorners;
|
||||
+ container->opaque_region_fullscreen = aFullScreen;
|
||||
}
|
||||
#endif
|
||||
|
||||
void moz_container_force_default_visual(MozContainer* container) {
|
||||
container->force_default_visual = true;
|
||||
}
|
||||
diff --git a/widget/gtk/mozcontainer.h b/widget/gtk/mozcontainer.h
|
||||
--- a/widget/gtk/mozcontainer.h
|
||||
+++ b/widget/gtk/mozcontainer.h
|
||||
@@ -77,16 +77,17 @@ struct _MozContainer {
|
||||
struct wl_surface* surface;
|
||||
struct wl_subsurface* subsurface;
|
||||
int subsurface_dx, subsurface_dy;
|
||||
struct wl_egl_window* eglwindow;
|
||||
struct wl_callback* frame_callback_handler;
|
||||
int frame_callback_handler_surface_id;
|
||||
gboolean opaque_region_needs_update;
|
||||
gboolean opaque_region_subtract_corners;
|
||||
+ gboolean opaque_region_fullscreen;
|
||||
gboolean surface_position_needs_update;
|
||||
gboolean surface_needs_clear;
|
||||
gboolean ready_to_draw;
|
||||
std::vector<std::function<void(void)>> initial_draw_cbs;
|
||||
#endif
|
||||
gboolean force_default_visual;
|
||||
};
|
||||
|
||||
@@ -112,12 +113,13 @@ void moz_container_move_resize(MozContai
|
||||
void moz_container_egl_window_set_size(MozContainer* container, int width,
|
||||
int height);
|
||||
void moz_container_scale_changed(MozContainer* container,
|
||||
GtkAllocation* aAllocation);
|
||||
void moz_container_add_initial_draw_callback(
|
||||
MozContainer* container, const std::function<void(void)>& initial_draw_cb);
|
||||
wl_surface* moz_gtk_widget_get_wl_surface(GtkWidget* aWidget);
|
||||
void moz_container_update_opaque_region(MozContainer* container,
|
||||
- bool aSubtractCorners);
|
||||
+ bool aSubtractCorners,
|
||||
+ bool aFullScreen);
|
||||
#endif
|
||||
|
||||
#endif /* __MOZ_CONTAINER_H__ */
|
||||
diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
|
||||
--- a/widget/gtk/nsWindow.cpp
|
||||
+++ b/widget/gtk/nsWindow.cpp
|
||||
@@ -4860,27 +4860,34 @@ void nsWindow::UpdateTopLevelOpaqueRegio
|
||||
int width = DevicePixelsToGdkCoordRoundDown(mBounds.width);
|
||||
int height = DevicePixelsToGdkCoordRoundDown(mBounds.height);
|
||||
|
||||
GdkRectangle rect = {x, y, width, height};
|
||||
if (!mToplevelOpaqueRegionState.NeedsUpdate(rect, aSubtractCorners)) {
|
||||
return;
|
||||
}
|
||||
|
||||
- wl_region* region =
|
||||
- CreateOpaqueRegionWayland(x, y, width, height, aSubtractCorners);
|
||||
- wl_surface_set_opaque_region(surface, region);
|
||||
- wl_region_destroy(region);
|
||||
-
|
||||
+ // Set opaque region to toplevel window only in fullscreen mode.
|
||||
+ bool fullScreen = mSizeState != nsSizeMode_Normal && !mIsTiled;
|
||||
+ if (fullScreen) {
|
||||
+ wl_region* region =
|
||||
+ CreateOpaqueRegionWayland(x, y, width, height, aSubtractCorners);
|
||||
+ wl_surface_set_opaque_region(surface, region);
|
||||
+ wl_region_destroy(region);
|
||||
+ } else {
|
||||
+ wl_surface_set_opaque_region(surface, nullptr);
|
||||
+ }
|
||||
+
|
||||
+ // TODO -> create a function for it
|
||||
GdkWindow* window = gtk_widget_get_window(mShell);
|
||||
if (window) {
|
||||
gdk_window_invalidate_rect(window, &rect, false);
|
||||
}
|
||||
|
||||
- moz_container_update_opaque_region(mContainer, aSubtractCorners);
|
||||
+ moz_container_update_opaque_region(mContainer, aSubtractCorners, fullScreen);
|
||||
}
|
||||
#endif
|
||||
|
||||
static void GdkWindowSetOpaqueRegion(GdkWindow* aGdkWindow,
|
||||
cairo_region_t* aRegion) {
|
||||
// Available as of GTK 3.10+
|
||||
static auto sGdkWindowSetOpaqueRegion =
|
||||
(void (*)(GdkWindow*, cairo_region_t*))dlsym(
|
@ -1,46 +0,0 @@
|
||||
|
||||
# HG changeset patch
|
||||
# User Andrew Osmond <aosmond@mozilla.com>
|
||||
# Date 1579706360 0
|
||||
# Node ID b3d8b08265b800165d684281d19ac845a8ff9a66
|
||||
# Parent 50c371b37a9fcd994a5866db73bd0d078e19f95d
|
||||
Bug 1610814 - Fix NEON compile error with gcc and RGB unpacking. r=lsalzman
|
||||
|
||||
This patch makes us use the correct intrinsic for loading a uint8x16
|
||||
register. It is not entirely clear why clang accepts this without
|
||||
complaint but beyond the types, it should be equivalent.
|
||||
|
||||
Differential Revision: https://phabricator.services.mozilla.com/D60667
|
||||
|
||||
diff --git a/gfx/2d/SwizzleNEON.cpp b/gfx/2d/SwizzleNEON.cpp
|
||||
--- a/gfx/2d/SwizzleNEON.cpp
|
||||
+++ b/gfx/2d/SwizzleNEON.cpp
|
||||
@@ -407,25 +407,25 @@ void UnpackRowRGB24_NEON(const uint8_t*
|
||||
}
|
||||
|
||||
uint8x16_t alpha = vreinterpretq_u8_u32(vdupq_n_u32(0xFF000000));
|
||||
|
||||
// Process all 4-pixel chunks as one vector.
|
||||
src -= 4 * 3;
|
||||
dst -= 4 * 4;
|
||||
while (src >= aSrc) {
|
||||
- uint8x16_t px = vld1q_u16(reinterpret_cast<const uint16_t*>(src));
|
||||
+ uint8x16_t px = vld1q_u8(src);
|
||||
// G2R2B1G1 R1B0G0R0 -> X1R1G1B1 X0R0G0B0
|
||||
uint8x8_t pxlo = vtbl1_u8(vget_low_u8(px), masklo);
|
||||
// B3G3R3B2 G2R2B1G1 -> X3R3G3B3 X2R2G2B2
|
||||
uint8x8_t pxhi =
|
||||
vtbl1_u8(vext_u8(vget_low_u8(px), vget_high_u8(px), 4), maskhi);
|
||||
px = vcombine_u8(pxlo, pxhi);
|
||||
px = vorrq_u8(px, alpha);
|
||||
- vst1q_u16(reinterpret_cast<uint16_t*>(dst), px);
|
||||
+ vst1q_u8(dst, px);
|
||||
src -= 4 * 3;
|
||||
dst -= 4 * 4;
|
||||
}
|
||||
}
|
||||
|
||||
// Force instantiation of swizzle variants here.
|
||||
template void UnpackRowRGB24_NEON<false>(const uint8_t*, uint8_t*, int32_t);
|
||||
template void UnpackRowRGB24_NEON<true>(const uint8_t*, uint8_t*, int32_t);
|
||||
|
@ -1,12 +1,20 @@
|
||||
# HG changeset patch
|
||||
# Parent 3de59fe1b8708c01e134ce698c4232b8a854f617
|
||||
Problem: webGL sites are displayed in the wrong color (usually blue-ish)
|
||||
Solution: Problem is with skia once again. Output of webgl seems endian-correct, but skia only
|
||||
knows how to deal with little endian.
|
||||
So we swizzle the output of webgl after reading it from readpixels()
|
||||
Note: This does not fix all webGL sites, but is a step in the right direction
|
||||
diff -r 6b017d3e9733 gfx/gl/GLContext.h
|
||||
--- a/gfx/gl/GLContext.h Mon Sep 09 10:04:05 2019 +0200
|
||||
+++ b/gfx/gl/GLContext.h Wed Nov 13 17:13:04 2019 +0100
|
||||
@@ -1551,6 +1551,13 @@
|
||||
|
||||
diff --git a/gfx/gl/GLContext.h b/gfx/gl/GLContext.h
|
||||
--- a/gfx/gl/GLContext.h
|
||||
+++ b/gfx/gl/GLContext.h
|
||||
@@ -1548,16 +1548,23 @@ class GLContext : public GenericAtomicRe
|
||||
AFTER_GL_CALL;
|
||||
}
|
||||
|
||||
void raw_fReadPixels(GLint x, GLint y, GLsizei width, GLsizei height,
|
||||
GLenum format, GLenum type, GLvoid* pixels) {
|
||||
BEFORE_GL_CALL;
|
||||
mSymbols.fReadPixels(x, y, width, height, format, type, pixels);
|
||||
OnSyncCall();
|
||||
@ -20,4 +28,8 @@ diff -r 6b017d3e9733 gfx/gl/GLContext.h
|
||||
AFTER_GL_CALL;
|
||||
mHeavyGLCallsSinceLastFlush = true;
|
||||
}
|
||||
|
||||
|
||||
void fReadPixels(GLint x, GLint y, GLsizei width, GLsizei height,
|
||||
GLenum format, GLenum type, GLvoid* pixels);
|
||||
|
||||
public:
|
||||
|
@ -1,18 +0,0 @@
|
||||
# HG changeset patch
|
||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
# Parent a9d61a2614b01b1e0ca37d00a6b11b2571868f86
|
||||
|
||||
diff --git a/media/libcubeb/src/cubeb_utils.cpp b/media/libcubeb/src/cubeb_utils.cpp
|
||||
--- a/media/libcubeb/src/cubeb_utils.cpp
|
||||
+++ b/media/libcubeb/src/cubeb_utils.cpp
|
||||
@@ -15,9 +15,10 @@ size_t cubeb_sample_size(cubeb_sample_fo
|
||||
return sizeof(int16_t);
|
||||
case CUBEB_SAMPLE_FLOAT32LE:
|
||||
case CUBEB_SAMPLE_FLOAT32BE:
|
||||
return sizeof(float);
|
||||
default:
|
||||
// should never happen as all cases are handled above.
|
||||
assert(false);
|
||||
}
|
||||
+ return 0;
|
||||
}
|
@ -1,6 +1,15 @@
|
||||
--- a/js/src/wasm/WasmSignalHandlers.cpp 2019-05-16 11:25:13.260881532 +0200
|
||||
+++ b/js/src/wasm/WasmSignalHandlers.cpp 2019-05-16 11:24:35.164589301 +0200
|
||||
@@ -243,7 +243,7 @@ using mozilla::DebugOnly;
|
||||
# HG changeset patch
|
||||
# Parent 9bc02ee6567ae3f1dad1f8578e650c0a1faa0179
|
||||
|
||||
diff --git a/js/src/wasm/WasmSignalHandlers.cpp b/js/src/wasm/WasmSignalHandlers.cpp
|
||||
--- a/js/src/wasm/WasmSignalHandlers.cpp
|
||||
+++ b/js/src/wasm/WasmSignalHandlers.cpp
|
||||
@@ -240,17 +240,17 @@ using mozilla::DebugOnly;
|
||||
// Those definitions are however not present in the headers of every Linux
|
||||
// distro - Raspbian is known to be a problem, for example. However those
|
||||
// distros are tier-3 platforms.
|
||||
//
|
||||
// If you run into compile problems on a tier-3 platform, you can disable the
|
||||
// emulation here.
|
||||
|
||||
#if defined(__linux__) && defined(__arm__)
|
||||
@ -9,3 +18,8 @@
|
||||
#endif
|
||||
|
||||
#ifdef WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS
|
||||
# include <sys/user.h>
|
||||
#endif
|
||||
|
||||
#if defined(ANDROID)
|
||||
// Not all versions of the Android NDK define ucontext_t or mcontext_t.
|
||||
|
@ -1,5 +1,5 @@
|
||||
# HG changeset patch
|
||||
# Parent 1317782cd47f1d1f2410712a1dd283b305393eae
|
||||
# Parent 2640f2f68373b7bec776bb11d3b3fb75c72a8adb
|
||||
|
||||
diff --git a/media/libopus/silk/arm/arm_silk_map.c b/media/libopus/silk/arm/arm_silk_map.c
|
||||
--- a/media/libopus/silk/arm/arm_silk_map.c
|
||||
|
@ -3,7 +3,7 @@
|
||||
# Date 1559294891 -7200
|
||||
# Fri May 31 11:28:11 2019 +0200
|
||||
# Node ID c2aa7198fb925e7fde96abf65b6f68b9b755f112
|
||||
# Parent 48866e4a200fb5299b94af4d9841e38336cff9f4
|
||||
# Parent d942febc5733911d795d1cec027fb4f3c0a6e53b
|
||||
Description: Add KDE integration to Firefox (toolkit parts)
|
||||
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
|
||||
Author: Lubos Lunak <lunak@suse.com>
|
||||
@ -91,7 +91,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build
|
||||
--- a/modules/libpref/moz.build
|
||||
+++ b/modules/libpref/moz.build
|
||||
@@ -113,16 +113,20 @@ EXPORTS.mozilla += [
|
||||
@@ -114,16 +114,20 @@ EXPORTS.mozilla += [
|
||||
]
|
||||
EXPORTS.mozilla += sorted(['!' + g for g in gen_h])
|
||||
|
||||
@ -157,7 +157,7 @@ diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpac
|
||||
diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloads/moz.build
|
||||
--- a/toolkit/components/downloads/moz.build
|
||||
+++ b/toolkit/components/downloads/moz.build
|
||||
@@ -41,10 +41,14 @@ XPCOM_MANIFESTS += [
|
||||
@@ -46,10 +46,14 @@ XPCOM_MANIFESTS += [
|
||||
|
||||
if CONFIG['MOZ_PLACES']:
|
||||
EXTRA_JS_MODULES += [
|
||||
@ -175,7 +175,7 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloa
|
||||
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
|
||||
@@ -1195,36 +1195,66 @@ nsUnknownContentTypeDialog.prototype = {
|
||||
@@ -1209,36 +1209,66 @@ nsUnknownContentTypeDialog.prototype = {
|
||||
params.handlerApp &&
|
||||
params.handlerApp.executable &&
|
||||
params.handlerApp.executable.isFile()
|
||||
|
@ -3,17 +3,22 @@
|
||||
# Date 1558442915 -7200
|
||||
# Tue May 21 14:48:35 2019 +0200
|
||||
# Node ID 6bcf2dfebc1ea2aa34e5cc61152709fc8e409dc5
|
||||
# Parent 4c434d19d03d5461e54fa22dfb82eaed4cd6631b
|
||||
# Parent dc1684693eed684bdafeff0ad78d4f6d288fcae1
|
||||
Do not use gconf for proxy settings if not running within Gnome
|
||||
Index: toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
|
||||
===================================================================
|
||||
RCS file: /cvsroot/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp,v
|
||||
retrieving revision 1.1
|
||||
|
||||
diff -r 4c434d19d03d -r 6bcf2dfebc1e toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
|
||||
--- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp Wed Jun 12 17:43:18 2019 +0000
|
||||
+++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp Tue May 21 14:48:35 2019 +0200
|
||||
@@ -55,11 +55,14 @@
|
||||
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
|
||||
@@ -49,21 +49,24 @@ NS_IMETHODIMP
|
||||
nsUnixSystemProxySettings::GetMainThreadOnly(bool* aMainThreadOnly) {
|
||||
// dbus prevents us from being threadsafe, but this routine should not block
|
||||
// anyhow
|
||||
*aMainThreadOnly = true;
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
void nsUnixSystemProxySettings::Init() {
|
||||
@ -33,3 +38,8 @@ diff -r 4c434d19d03d -r 6bcf2dfebc1e toolkit/system/unixproxy/nsUnixSystemProxyS
|
||||
}
|
||||
}
|
||||
|
||||
nsresult nsUnixSystemProxySettings::GetPACURI(nsACString& aResult) {
|
||||
if (mProxySettings) {
|
||||
nsCString proxyMode;
|
||||
// Check if mode is auto
|
||||
nsresult rv =
|
||||
|
@ -1,7 +1,7 @@
|
||||
# HG changeset patch
|
||||
# User Petr Cerny <pcerny@novell.com>
|
||||
# Parent 7308e4a7c1f769f4bbbc90870b849cadd99495a6
|
||||
# Parent 6ab277cf616dc2748e9855101100a97a6cec10a6
|
||||
# Parent 2361c5db1e70e358b2158325e07fa15bb4569c2c
|
||||
Bug 634334 - call to the ntlm_auth helper fails
|
||||
|
||||
diff --git a/extensions/auth/nsAuthSambaNTLM.cpp b/extensions/auth/nsAuthSambaNTLM.cpp
|
||||
|
@ -3,7 +3,7 @@
|
||||
# Date 1558452418 -7200
|
||||
# Tue May 21 17:26:58 2019 +0200
|
||||
# Node ID 6cd963b6c82ea6629aaf4050851789b78f310338
|
||||
# Parent 010a35335b4e45e222b9efdbda24fd1963202ecf
|
||||
# Parent 74d44a14979d4ed1431d8291e20775339a5a6510
|
||||
imported patch mozilla-ppc-altivec_static_inline.patch
|
||||
|
||||
diff --git a/gfx/qcms/transform-altivec.cpp b/gfx/qcms/transform-altivec.cpp
|
||||
|
@ -3,7 +3,7 @@
|
||||
# Date 1560754926 -7200
|
||||
# Mon Jun 17 09:02:06 2019 +0200
|
||||
# Node ID 428161c3b9599083e1b8710eda1760f1f707ab11
|
||||
# Parent fa1cf8b9cb4efdf89fe19e543fb54272b726a353
|
||||
# Parent 83625bab561d09fb68aa2c71cea7cbafd9ec09b4
|
||||
#Description: reduce the rust debuginfo level on selected architectures where
|
||||
# compiling with debuginfo=2 causes the OOM killer to interrupt the build on
|
||||
# launchpad builders. Initially this was only on 32 bit architectures, but with
|
||||
@ -12,7 +12,7 @@
|
||||
diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
|
||||
--- a/build/moz.configure/toolchain.configure
|
||||
+++ b/build/moz.configure/toolchain.configure
|
||||
@@ -1861,18 +1861,18 @@ imply_option('RUSTC_OPT_LEVEL', '2', whe
|
||||
@@ -1823,18 +1823,18 @@ imply_option('RUSTC_OPT_LEVEL', '2', whe
|
||||
@depends('RUSTC_OPT_LEVEL', moz_optimize)
|
||||
def rustc_opt_level(opt_level_option, moz_optimize):
|
||||
if opt_level_option:
|
||||
@ -33,7 +33,7 @@ diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolc
|
||||
# optimization level. Since Cargo only supports 2 profiles, we're in
|
||||
# a bit of a bind.
|
||||
#
|
||||
@@ -1885,16 +1885,18 @@ def rust_compile_flags(opt_level, debug_
|
||||
@@ -1847,16 +1847,18 @@ def rust_compile_flags(opt_level, debug_
|
||||
|
||||
# opt-level=0 implies -C debug-assertions, which may not be desired
|
||||
# unless Rust debugging is enabled.
|
||||
|
@ -3,13 +3,18 @@
|
||||
# Date 1558452126 -7200
|
||||
# Tue May 21 17:22:06 2019 +0200
|
||||
# Node ID a3cc550d25e3a04d906f516928cbcbe50efd585e
|
||||
# Parent 433beec63e6b5f409683af20a0c1ab137cc7bfad
|
||||
# Parent ae49126f2a63ba1de250ad02ffe39379295660f3
|
||||
[mq]: mozilla-s390-bigendian.patch
|
||||
|
||||
diff -r 433beec63e6b -r a3cc550d25e3 build/autoconf/icu.m4
|
||||
--- a/build/autoconf/icu.m4 Tue May 21 17:12:20 2019 +0200
|
||||
+++ b/build/autoconf/icu.m4 Tue May 21 17:22:06 2019 +0200
|
||||
@@ -78,7 +78,7 @@
|
||||
diff --git a/build/autoconf/icu.m4 b/build/autoconf/icu.m4
|
||||
--- a/build/autoconf/icu.m4
|
||||
+++ b/build/autoconf/icu.m4
|
||||
@@ -63,17 +63,17 @@ if test -n "$USE_ICU"; then
|
||||
if test x"$version" = x; then
|
||||
AC_MSG_ERROR([cannot determine icu version number from uvernum.h header file $lineno])
|
||||
fi
|
||||
MOZ_ICU_VERSION="$version"
|
||||
|
||||
# TODO: the l is actually endian-dependent
|
||||
# We could make this set as 'l' or 'b' for little or big, respectively,
|
||||
# but we'd need to check in a big-endian version of the file.
|
||||
@ -18,3 +23,8 @@ diff -r 433beec63e6b -r a3cc550d25e3 build/autoconf/icu.m4
|
||||
fi
|
||||
|
||||
AC_SUBST(MOZ_ICU_VERSION)
|
||||
AC_SUBST(JS_HAS_INTL_API)
|
||||
AC_SUBST(USE_ICU)
|
||||
AC_SUBST(ICU_DATA_FILE)
|
||||
|
||||
if test -n "$USE_ICU"; then
|
||||
|
@ -3,13 +3,18 @@
|
||||
# Date 1558452408 -7200
|
||||
# Tue May 21 17:26:48 2019 +0200
|
||||
# Node ID 602e92722e765a3c238d3b96b26c0c8063b5eeb4
|
||||
# Parent a3cc550d25e3a04d906f516928cbcbe50efd585e
|
||||
# Parent cb0089687ab899846b8229c3741261d50101340e
|
||||
[mq]: mozilla-s390-context.patch
|
||||
|
||||
diff -r a3cc550d25e3 -r 602e92722e76 js/src/wasm/WasmSignalHandlers.cpp
|
||||
--- a/js/src/wasm/WasmSignalHandlers.cpp Tue May 21 17:22:06 2019 +0200
|
||||
+++ b/js/src/wasm/WasmSignalHandlers.cpp Tue May 21 17:26:48 2019 +0200
|
||||
@@ -154,6 +154,10 @@
|
||||
diff --git a/js/src/wasm/WasmSignalHandlers.cpp b/js/src/wasm/WasmSignalHandlers.cpp
|
||||
--- a/js/src/wasm/WasmSignalHandlers.cpp
|
||||
+++ b/js/src/wasm/WasmSignalHandlers.cpp
|
||||
@@ -150,16 +150,20 @@ using mozilla::DebugOnly;
|
||||
# define FP_sig(p) ((p)->uc_mcontext.mc_fp)
|
||||
# define SP_sig(p) ((p)->uc_mcontext.mc_i7)
|
||||
# endif
|
||||
# if defined(__linux__) && (defined(__ppc64__) || defined(__PPC64__) || \
|
||||
defined(__ppc64le__) || defined(__PPC64LE__))
|
||||
# define R01_sig(p) ((p)->uc_mcontext.gp_regs[1])
|
||||
# define R32_sig(p) ((p)->uc_mcontext.gp_regs[32])
|
||||
# endif
|
||||
@ -20,7 +25,17 @@ diff -r a3cc550d25e3 -r 602e92722e76 js/src/wasm/WasmSignalHandlers.cpp
|
||||
#elif defined(__NetBSD__)
|
||||
# define EIP_sig(p) ((p)->uc_mcontext.__gregs[_REG_EIP])
|
||||
# define EBP_sig(p) ((p)->uc_mcontext.__gregs[_REG_EBP])
|
||||
@@ -385,8 +389,13 @@
|
||||
# define ESP_sig(p) ((p)->uc_mcontext.__gregs[_REG_ESP])
|
||||
# define RIP_sig(p) ((p)->uc_mcontext.__gregs[_REG_RIP])
|
||||
# define RSP_sig(p) ((p)->uc_mcontext.__gregs[_REG_RSP])
|
||||
# define RBP_sig(p) ((p)->uc_mcontext.__gregs[_REG_RBP])
|
||||
# define R11_sig(p) ((p)->uc_mcontext.__gregs[_REG_R11])
|
||||
@@ -381,18 +385,23 @@ struct macos_arm_context {
|
||||
# define FP_sig(p) RFP_sig(p)
|
||||
# define SP_sig(p) RSP_sig(p)
|
||||
# define LR_sig(p) R31_sig(p)
|
||||
#elif defined(__ppc64__) || defined(__PPC64__) || defined(__ppc64le__) || \
|
||||
defined(__PPC64LE__)
|
||||
# define PC_sig(p) R32_sig(p)
|
||||
# define SP_sig(p) R01_sig(p)
|
||||
# define FP_sig(p) R01_sig(p)
|
||||
@ -34,3 +49,8 @@ diff -r a3cc550d25e3 -r 602e92722e76 js/src/wasm/WasmSignalHandlers.cpp
|
||||
static void SetContextPC(CONTEXT* context, uint8_t* pc) {
|
||||
#ifdef PC_sig
|
||||
*reinterpret_cast<uint8_t**>(&PC_sig(context)) = pc;
|
||||
#else
|
||||
MOZ_CRASH();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -1,11 +1,11 @@
|
||||
PRODUCT="firefox"
|
||||
CHANNEL="release"
|
||||
VERSION="73.0.1"
|
||||
VERSION="74.0"
|
||||
VERSION_SUFFIX=""
|
||||
PREV_VERSION="73.0"
|
||||
PREV_VERSION="73.0.1"
|
||||
PREV_VERSION_SUFFIX=""
|
||||
#SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation
|
||||
|
||||
RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-release"
|
||||
RELEASE_TAG="5b0905233e5d29d9fbad98c1380030387cda5dd9"
|
||||
RELEASE_TIMESTAMP="20200217142647"
|
||||
RELEASE_TAG="c6e493873ba543907dadabb42b64208a3679d43d"
|
||||
RELEASE_TIMESTAMP="20200309095159"
|
||||
|
Loading…
Reference in New Issue
Block a user