summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--firefox-disable-ffvpx-with-vapi.patch60
-rw-r--r--firefox-tests-reftest.patch382
-rw-r--r--firefox-tests-xpcshell.patch192
-rw-r--r--firefox.spec17
-rw-r--r--mozilla-1645671.patch67
-rw-r--r--mozilla-1667096.patch30
-rw-r--r--mozilla-1670333.patch32
-rw-r--r--mozilla-1686888.patch578
-rw-r--r--pgo.patch38
-rwxr-xr-xrun-tests-x111
-rw-r--r--sources4
12 files changed, 405 insertions, 998 deletions
diff --git a/.gitignore b/.gitignore
index dd69d68..04252bc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -453,3 +453,5 @@ firefox-3.6.4.source.tar.bz2
/firefox-langpacks-86.0.1-20210312.tar.xz
/firefox-87.0.source.tar.xz
/firefox-langpacks-87.0-20210322.tar.xz
+/firefox-langpacks-88.0-20210419.tar.xz
+/firefox-88.0.source.tar.xz
diff --git a/firefox-disable-ffvpx-with-vapi.patch b/firefox-disable-ffvpx-with-vapi.patch
index 3b706b7..3ecdbed 100644
--- a/firefox-disable-ffvpx-with-vapi.patch
+++ b/firefox-disable-ffvpx-with-vapi.patch
@@ -1,7 +1,7 @@
-diff -up firefox-87.0/dom/media/platforms/PDMFactory.cpp.ffvpx-with-vapi firefox-87.0/dom/media/platforms/PDMFactory.cpp
---- firefox-87.0/dom/media/platforms/PDMFactory.cpp.ffvpx-with-vapi 2021-03-22 21:31:15.466328522 +0100
-+++ firefox-87.0/dom/media/platforms/PDMFactory.cpp 2021-03-22 21:32:15.034156238 +0100
-@@ -462,12 +462,6 @@ void PDMFactory::CreateRddPDMs() {
+diff -up firefox-88.0/dom/media/platforms/PDMFactory.cpp.ffvpx-with-vapi firefox-88.0/dom/media/platforms/PDMFactory.cpp
+--- firefox-88.0/dom/media/platforms/PDMFactory.cpp.ffvpx-with-vapi 2021-04-15 21:44:28.000000000 +0200
++++ firefox-88.0/dom/media/platforms/PDMFactory.cpp 2021-04-19 13:27:07.808429721 +0200
+@@ -481,12 +481,6 @@ void PDMFactory::CreateRddPDMs() {
CreateAndStartupPDM<AppleDecoderModule>();
}
#endif
@@ -14,8 +14,8 @@ diff -up firefox-87.0/dom/media/platforms/PDMFactory.cpp.ffvpx-with-vapi firefox
#ifdef MOZ_FFMPEG
if (StaticPrefs::media_ffmpeg_enabled() &&
StaticPrefs::media_rdd_ffmpeg_enabled() &&
-@@ -477,6 +471,12 @@ void PDMFactory::CreateRddPDMs() {
- mFailureFlags -= DecoderDoctorDiagnostics::Flags::FFmpegFailedToLoad;
+@@ -495,6 +489,12 @@ void PDMFactory::CreateRddPDMs() {
+ FFmpegRuntimeLinker::LinkStatusCode());
}
#endif
+#ifdef MOZ_FFVPX
@@ -27,3 +27,51 @@ diff -up firefox-87.0/dom/media/platforms/PDMFactory.cpp.ffvpx-with-vapi firefox
CreateAndStartupPDM<AgnosticDecoderModule>();
}
+@@ -525,11 +525,6 @@ void PDMFactory::CreateContentPDMs() {
+ CreateAndStartupPDM<OmxDecoderModule>();
+ }
+ #endif
+-#ifdef MOZ_FFVPX
+- if (StaticPrefs::media_ffvpx_enabled()) {
+- CreateAndStartupPDM<FFVPXRuntimeLinker>();
+- }
+-#endif
+ #ifdef MOZ_FFMPEG
+ if (StaticPrefs::media_ffmpeg_enabled() &&
+ !CreateAndStartupPDM<FFmpegRuntimeLinker>()) {
+@@ -537,6 +532,11 @@ void PDMFactory::CreateContentPDMs() {
+ FFmpegRuntimeLinker::LinkStatusCode());
+ }
+ #endif
++#ifdef MOZ_FFVPX
++ if (StaticPrefs::media_ffvpx_enabled()) {
++ CreateAndStartupPDM<FFVPXRuntimeLinker>();
++ }
++#endif
+ #ifdef MOZ_WIDGET_ANDROID
+ if (StaticPrefs::media_android_media_codec_enabled()) {
+ StartupPDM(AndroidDecoderModule::Create(),
+@@ -571,11 +571,6 @@ void PDMFactory::CreateDefaultPDMs() {
+ CreateAndStartupPDM<OmxDecoderModule>();
+ }
+ #endif
+-#ifdef MOZ_FFVPX
+- if (StaticPrefs::media_ffvpx_enabled()) {
+- CreateAndStartupPDM<FFVPXRuntimeLinker>();
+- }
+-#endif
+ #ifdef MOZ_FFMPEG
+ if (StaticPrefs::media_ffmpeg_enabled() &&
+ !CreateAndStartupPDM<FFmpegRuntimeLinker>()) {
+@@ -583,6 +578,11 @@ void PDMFactory::CreateDefaultPDMs() {
+ FFmpegRuntimeLinker::LinkStatusCode());
+ }
+ #endif
++#ifdef MOZ_FFVPX
++ if (StaticPrefs::media_ffvpx_enabled()) {
++ CreateAndStartupPDM<FFVPXRuntimeLinker>();
++ }
++#endif
+ #ifdef MOZ_WIDGET_ANDROID
+ if (StaticPrefs::media_android_media_codec_enabled()) {
+ StartupPDM(AndroidDecoderModule::Create(),
diff --git a/firefox-tests-reftest.patch b/firefox-tests-reftest.patch
index f76da7d..714c788 100644
--- a/firefox-tests-reftest.patch
+++ b/firefox-tests-reftest.patch
@@ -1,24 +1,24 @@
-diff -U0 firefox-87.0/dom/canvas/test/reftest/filters/reftest.list.firefox-tests-reftest firefox-87.0/dom/canvas/test/reftest/filters/reftest.list
---- firefox-87.0/dom/canvas/test/reftest/filters/reftest.list.firefox-tests-reftest 2021-03-18 14:48:29.000000000 +0100
-+++ firefox-87.0/dom/canvas/test/reftest/filters/reftest.list 2021-03-25 18:32:51.615417692 +0100
+diff -U0 firefox-88.0/dom/canvas/test/reftest/filters/reftest.list.firefox-tests-reftest firefox-88.0/dom/canvas/test/reftest/filters/reftest.list
+--- firefox-88.0/dom/canvas/test/reftest/filters/reftest.list.firefox-tests-reftest 2021-04-15 21:44:27.000000000 +0200
++++ firefox-88.0/dom/canvas/test/reftest/filters/reftest.list 2021-04-19 13:52:26.651141817 +0200
@@ -21 +21 @@
-== units-ex.html ref.html
+fuzzy-if(gtkWidget,0-255,0-100) == units-ex.html ref.html
-diff -U0 firefox-87.0/dom/html/reftests/autofocus/reftest.list.firefox-tests-reftest firefox-87.0/dom/html/reftests/autofocus/reftest.list
---- firefox-87.0/dom/html/reftests/autofocus/reftest.list.firefox-tests-reftest 2021-03-18 14:48:34.000000000 +0100
-+++ firefox-87.0/dom/html/reftests/autofocus/reftest.list 2021-03-25 18:32:51.615417692 +0100
+diff -U0 firefox-88.0/dom/html/reftests/autofocus/reftest.list.firefox-tests-reftest firefox-88.0/dom/html/reftests/autofocus/reftest.list
+--- firefox-88.0/dom/html/reftests/autofocus/reftest.list.firefox-tests-reftest 2021-04-15 21:44:27.000000000 +0200
++++ firefox-88.0/dom/html/reftests/autofocus/reftest.list 2021-04-19 13:52:26.651141817 +0200
@@ -7 +7 @@
-fuzzy-if(gtkWidget,0-18,0-1) needs-focus == textarea-load.html textarea-ref.html # One anti-aliased corner.
+fuzzy-if(gtkWidget,0-56,0-2) needs-focus == textarea-load.html textarea-ref.html # One anti-aliased corner.
-diff -U0 firefox-87.0/dom/html/reftests/reftest.list.firefox-tests-reftest firefox-87.0/dom/html/reftests/reftest.list
---- firefox-87.0/dom/html/reftests/reftest.list.firefox-tests-reftest 2021-03-18 14:48:34.000000000 +0100
-+++ firefox-87.0/dom/html/reftests/reftest.list 2021-03-25 18:32:51.615417692 +0100
+diff -U0 firefox-88.0/dom/html/reftests/reftest.list.firefox-tests-reftest firefox-88.0/dom/html/reftests/reftest.list
+--- firefox-88.0/dom/html/reftests/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/dom/html/reftests/reftest.list 2021-04-19 13:52:26.651141817 +0200
@@ -46 +46 @@
-skip-if(isCoverageBuild) pref(layout.css.image-orientation.initial-from-image,true) fuzzy(0-2,0-830) == bug917595-iframe-1.html bug917595-1-ref.html
+fuzzy-if(gtkWidget,0-2,0-847) skip-if(isCoverageBuild) pref(layout.css.image-orientation.initial-from-image,true) == bug917595-iframe-1.html bug917595-1-ref.html
-diff -U0 firefox-87.0/dom/media/test/reftest/reftest.list.firefox-tests-reftest firefox-87.0/dom/media/test/reftest/reftest.list
---- firefox-87.0/dom/media/test/reftest/reftest.list.firefox-tests-reftest 2021-03-18 14:48:36.000000000 +0100
-+++ firefox-87.0/dom/media/test/reftest/reftest.list 2021-03-25 18:32:51.615417692 +0100
+diff -U0 firefox-88.0/dom/media/test/reftest/reftest.list.firefox-tests-reftest firefox-88.0/dom/media/test/reftest/reftest.list
+--- firefox-88.0/dom/media/test/reftest/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/dom/media/test/reftest/reftest.list 2021-04-19 13:52:26.651141817 +0200
@@ -1,6 +0,0 @@
-skip-if(Android) fuzzy-if(OSX,0-80,0-76800) fuzzy-if(winWidget,0-62,0-76799) fuzzy-if(gtkWidget&&layersGPUAccelerated,0-70,0-644) HTTP(..) == short.mp4.firstframe.html short.mp4.firstframe-ref.html
-skip-if(Android) fuzzy-if(OSX,0-87,0-76797) fuzzy-if(winWidget,0-60,0-76797) fuzzy-if(gtkWidget&&layersGPUAccelerated,0-60,0-1810) HTTP(..) == short.mp4.lastframe.html short.mp4.lastframe-ref.html
@@ -26,22 +26,22 @@ diff -U0 firefox-87.0/dom/media/test/reftest/reftest.list.firefox-tests-reftest
-skip-if(Android) fuzzy-if(OSX,0-25,0-175921) fuzzy-if(winWidget,0-71,0-179198) fuzzy-if((/^Windows\x20NT\x2010\.0/.test(http.oscpu))&&(/^aarch64-msvc/.test(xulRuntime.XPCOMABI)),0-255,0-179500) HTTP(..) == gizmo.mp4.seek.html gizmo.mp4.55thframe-ref.html
-skip-if(Android) skip-if(MinGW) skip-if((/^Windows\x20NT\x2010\.0/.test(http.oscpu))&&(/^aarch64-msvc/.test(xulRuntime.XPCOMABI))) fuzzy(0-10,0-778236) == image-10bits-rendering-video.html image-10bits-rendering-ref.html
-skip-if(Android) skip-if(MinGW) skip-if((/^Windows\x20NT\x2010\.0/.test(http.oscpu))&&(/^aarch64-msvc/.test(xulRuntime.XPCOMABI))) fuzzy(0-10,0-778536) == image-10bits-rendering-90-video.html image-10bits-rendering-90-ref.html
-diff -U0 firefox-87.0/dom/media/webvtt/test/reftest/reftest.list.firefox-tests-reftest firefox-87.0/dom/media/webvtt/test/reftest/reftest.list
---- firefox-87.0/dom/media/webvtt/test/reftest/reftest.list.firefox-tests-reftest 2021-03-18 14:48:35.000000000 +0100
-+++ firefox-87.0/dom/media/webvtt/test/reftest/reftest.list 2021-03-25 18:32:51.615417692 +0100
+diff -U0 firefox-88.0/dom/media/webvtt/test/reftest/reftest.list.firefox-tests-reftest firefox-88.0/dom/media/webvtt/test/reftest/reftest.list
+--- firefox-88.0/dom/media/webvtt/test/reftest/reftest.list.firefox-tests-reftest 2021-04-15 21:44:28.000000000 +0200
++++ firefox-88.0/dom/media/webvtt/test/reftest/reftest.list 2021-04-19 13:52:26.651141817 +0200
@@ -1,2 +0,0 @@
-skip-if(Android) fuzzy-if((/^Windows\x20NT\x2010\.0/.test(http.oscpu))&&(/^aarch64-msvc/.test(xulRuntime.XPCOMABI)),0-136,0-427680) == vtt_update_display_after_removed_cue.html vtt_update_display_after_removed_cue_ref.html
-skip-if(Android) fuzzy-if(winWidget,0-170,0-170) == vtt_overlapping_time.html vtt_overlapping_time-ref.html
-diff -U0 firefox-87.0/gfx/layers/apz/test/reftest/reftest.list.firefox-tests-reftest firefox-87.0/gfx/layers/apz/test/reftest/reftest.list
---- firefox-87.0/gfx/layers/apz/test/reftest/reftest.list.firefox-tests-reftest 2021-03-18 14:48:37.000000000 +0100
-+++ firefox-87.0/gfx/layers/apz/test/reftest/reftest.list 2021-03-25 18:32:51.615417692 +0100
+diff -U0 firefox-88.0/gfx/layers/apz/test/reftest/reftest.list.firefox-tests-reftest firefox-88.0/gfx/layers/apz/test/reftest/reftest.list
+--- firefox-88.0/gfx/layers/apz/test/reftest/reftest.list.firefox-tests-reftest 2021-04-15 21:44:28.000000000 +0200
++++ firefox-88.0/gfx/layers/apz/test/reftest/reftest.list 2021-04-19 14:28:56.488112726 +0200
@@ -6,6 +6,6 @@
--fuzzy-if(Android,0-1,0-2) fuzzy-if(webrender&&gtkWidget&&!swgl,7-8,24-32) fuzzy-if(webrender&&cocoaWidget,22-22,44-44) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-v.html async-scrollbar-1-v-ref.html
--fuzzy-if(Android,0-4,0-5) fuzzy-if(webrender&&gtkWidget,28-30,28-32) fuzzy-if(webrender&&cocoaWidget,22-22,44-44) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-h.html async-scrollbar-1-h-ref.html
--fuzzy-if(Android,0-7,0-6) fuzzy-if(webrender&&gtkWidget&&!swgl,2-2,19-20) fuzzy-if(webrender&&cocoaWidget,17-17,88-88) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-vh.html async-scrollbar-1-vh-ref.html
--fuzzy-if(Android,0-1,0-2) fuzzy-if(webrender&&gtkWidget&&!swgl,7-8,24-32) fuzzy-if(webrender&&cocoaWidget,22-22,44-44) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-v-rtl.html async-scrollbar-1-v-rtl-ref.html
--fuzzy-if(Android,0-14,0-5) fuzzy-if(webrender&&gtkWidget,28-30,28-32) fuzzy-if(webrender&&cocoaWidget,22-22,44-44) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-h-rtl.html async-scrollbar-1-h-rtl-ref.html
--fuzzy-if(Android,0-8,0-8) fuzzy-if(webrender&&gtkWidget,13-14,27-32) fuzzy-if(webrender&&cocoaWidget,17-17,50-54) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-vh-rtl.html async-scrollbar-1-vh-rtl-ref.html
+-fuzzy-if(Android,0-1,0-2) fuzzy-if(webrender&&gtkWidget,1-8,8-32) fuzzy-if(webrender&&cocoaWidget,18-22,20-44) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-v.html async-scrollbar-1-v-ref.html
+-fuzzy-if(Android,0-4,0-5) fuzzy-if(webrender&&gtkWidget,1-30,4-32) fuzzy-if(webrender&&cocoaWidget,18-22,20-44) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-h.html async-scrollbar-1-h-ref.html
+-fuzzy-if(Android,0-7,0-6) fuzzy-if(webrender&&gtkWidget,1-2,4-20) fuzzy-if(webrender&&cocoaWidget,14-18,48-88) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-vh.html async-scrollbar-1-vh-ref.html
+-fuzzy-if(Android,0-1,0-2) fuzzy-if(webrender&&gtkWidget,1-8,8-32) fuzzy-if(webrender&&cocoaWidget,18-22,20-44) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-v-rtl.html async-scrollbar-1-v-rtl-ref.html
+-fuzzy-if(Android,0-14,0-5) fuzzy-if(webrender&&gtkWidget,1-30,12-32) fuzzy-if(webrender&&cocoaWidget,18-22,20-44) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-h-rtl.html async-scrollbar-1-h-rtl-ref.html
+-fuzzy-if(Android,0-8,0-8) fuzzy-if(webrender&&gtkWidget,8-14,12-32) fuzzy-if(webrender&&cocoaWidget,14-18,26-54) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-vh-rtl.html async-scrollbar-1-vh-rtl-ref.html
+fuzzy-if(Android,0-1,0-2) fuzzy-if(webrender&&gtkWidget&&!swgl,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,22-22,44-44) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-v.html async-scrollbar-1-v-ref.html
+fuzzy-if(Android,0-4,0-5) fuzzy-if(webrender&&gtkWidget,28-31,28-50) fuzzy-if(webrender&&cocoaWidget,22-22,44-44) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-h.html async-scrollbar-1-h-ref.html
+fuzzy-if(Android,0-6,0-6) fuzzy-if(webrender&&gtkWidget&&!swgl,0-20,0-100) fuzzy-if(webrender&&cocoaWidget,17-17,88-88) skip-if(!asyncPan) pref(apz.allow_zooming,true) == async-scrollbar-1-vh.html async-scrollbar-1-vh-ref.html
@@ -51,71 +51,71 @@ diff -U0 firefox-87.0/gfx/layers/apz/test/reftest/reftest.list.firefox-tests-ref
@@ -21 +21 @@
-# On desktop, even more fuzz is needed because thumb scaling is not exactly proportional: making the page twice as long
+# On desktop, even more fuzz is needed because thumb scaling is not exactly proportional: making the page twice as long
-diff -U0 firefox-87.0/image/test/reftest/downscaling/reftest.list.firefox-tests-reftest firefox-87.0/image/test/reftest/downscaling/reftest.list
---- firefox-87.0/image/test/reftest/downscaling/reftest.list.firefox-tests-reftest 2021-03-18 14:48:42.000000000 +0100
-+++ firefox-87.0/image/test/reftest/downscaling/reftest.list 2021-03-25 18:32:51.615417692 +0100
+diff -U0 firefox-88.0/image/test/reftest/downscaling/reftest.list.firefox-tests-reftest firefox-88.0/image/test/reftest/downscaling/reftest.list
+--- firefox-88.0/image/test/reftest/downscaling/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/image/test/reftest/downscaling/reftest.list 2021-04-19 13:52:26.652141847 +0200
@@ -92 +91,0 @@
-fuzzy(0-17,0-3221) fuzzy-if(gtkWidget&&!webrender,4-4,2616-2616) fuzzy-if(gtkWidget&&!webrender&&!layersGPUAccelerated,0-0,0-0) fuzzy-if(gtkWidget&&webrender,0-0,0-0) skip-if(Android) == downscale-moz-icon-1.html downscale-moz-icon-1-ref.html # gtkWidget Bug 1592059: regular is 2616, no-accel is 0, qr passes with 0
@@ -181 +179,0 @@
-fuzzy(0-53,0-6391) fuzzy-if(gtkWidget&&webrender,18-19,5502-5568) fails-if(/^Windows\x20NT\x205\.1/.test(http.oscpu)) skip-if(Android) == downscale-moz-icon-1.html downscale-moz-icon-1-ref.html # gtkWidget Bug 1592059
-diff -U0 firefox-87.0/layout/reftests/abs-pos/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/abs-pos/reftest.list
---- firefox-87.0/layout/reftests/abs-pos/reftest.list.firefox-tests-reftest 2021-03-18 14:48:54.000000000 +0100
-+++ firefox-87.0/layout/reftests/abs-pos/reftest.list 2021-03-25 18:32:51.616417722 +0100
+diff -U0 firefox-88.0/layout/reftests/abs-pos/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/abs-pos/reftest.list
+--- firefox-88.0/layout/reftests/abs-pos/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/abs-pos/reftest.list 2021-04-19 13:52:26.652141847 +0200
@@ -54 +54 @@
-fuzzy-if(gtkWidget,0-1,0-1) fuzzy-if(Android,0-9,0-185) fuzzy-if(asyncPan&&!layersGPUAccelerated,0-140,0-144) == scrollframe-2.html scrollframe-2-ref.html #bug 756530
+fuzzy-if(gtkWidget,0-100,0-160) fuzzy-if(Android,0-9,0-185) == scrollframe-2.html scrollframe-2-ref.html #bug 756530
-diff -U0 firefox-87.0/layout/reftests/async-scrolling/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/async-scrolling/reftest.list
---- firefox-87.0/layout/reftests/async-scrolling/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/async-scrolling/reftest.list 2021-03-25 18:32:51.616417722 +0100
+diff -U0 firefox-88.0/layout/reftests/async-scrolling/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/async-scrolling/reftest.list
+--- firefox-88.0/layout/reftests/async-scrolling/reftest.list.firefox-tests-reftest 2021-04-19 13:52:26.652141847 +0200
++++ firefox-88.0/layout/reftests/async-scrolling/reftest.list 2021-04-19 14:22:06.160749705 +0200
@@ -27 +27 @@
--fuzzy-if(Android,0-8,0-4) fuzzy-if(webrender&&gtkWidget,32-33,28-32) fuzzy-if(webrender&&cocoaWidget,21-21,44-44) skip-if(!asyncPan) == position-fixed-transformed-1.html position-fixed-transformed-1-ref.html # Bug 1604338
+-fuzzy-if(Android,0-8,0-4) fuzzy-if(webrender&&gtkWidget,20-33,14-32) fuzzy-if(webrender&&cocoaWidget,9-21,20-44) skip-if(!asyncPan) == position-fixed-transformed-1.html position-fixed-transformed-1-ref.html # Bug 1604338
+fuzzy-if(Android,0-8,0-4) fuzzy-if(webrender&&gtkWidget,30-50,30-50) fuzzy-if(webrender&&cocoaWidget,21-21,44-44) skip-if(!asyncPan) == position-fixed-transformed-1.html position-fixed-transformed-1-ref.html # Bug 1604338
@@ -38 +38 @@
--skip-if(!asyncPan) fuzzy(0-2,0-2) fuzzy-if(cocoaWidget&&!webrender,1-1,7-16) fuzzy-if(gtkWidget&&!nativeThemePref,0-1,0-4) fuzzy-if(winWidget&&!nativeThemePref,0-4,0-34) == fixed-pos-scrollable-1.html fixed-pos-scrollable-1-ref.html
+-skip-if(!asyncPan) fuzzy(0-2,0-2) fuzzy-if(cocoaWidget&&!webrender,1-1,7-16) fuzzy-if(gtkWidget&&!nativeThemePref,0-1,0-4) fuzzy-if(winWidget&&!nativeThemePref,0-1,0-51) == fixed-pos-scrollable-1.html fixed-pos-scrollable-1-ref.html
+skip-if(!asyncPan) fuzzy(0-2,0-2) fuzzy-if(gtkWidget,0-5,0-5) fuzzy-if(cocoaWidget&&!webrender,0-10,0-16) == fixed-pos-scrollable-1.html fixed-pos-scrollable-1-ref.html
@@ -52,2 +52,2 @@
--fuzzy-if(Android,0-6,0-4) fuzzy-if(skiaContent&&!Android,0-1,0-34) fuzzy-if(webrender&&gtkWidget,34-35,28-32) fuzzy-if(webrender&&cocoaWidget,7-7,38-39) skip-if(!asyncPan) == offscreen-clipped-blendmode-1.html offscreen-clipped-blendmode-ref.html # Bug 1604338
--fuzzy-if(Android,0-6,0-4) fuzzy-if(webrender&&gtkWidget,34-35,28-32) fuzzy-if(webrender&&cocoaWidget,7-7,38-39) skip-if(!asyncPan) == offscreen-clipped-blendmode-2.html offscreen-clipped-blendmode-ref.html # Bug 1604338
+-fuzzy-if(Android,0-6,0-4) fuzzy-if(skiaContent&&!Android,0-1,0-34) fuzzy-if(webrender&&gtkWidget,22-74,20-32) fuzzy-if(webrender&&cocoaWidget,6-7,18-39) skip-if(!asyncPan) == offscreen-clipped-blendmode-1.html offscreen-clipped-blendmode-ref.html # Bug 1604338
+-fuzzy-if(Android,0-6,0-4) fuzzy-if(webrender&&gtkWidget,22-74,20-32) fuzzy-if(webrender&&cocoaWidget,6-7,18-39) skip-if(!asyncPan) == offscreen-clipped-blendmode-2.html offscreen-clipped-blendmode-ref.html # Bug 1604338
+fuzzy-if(Android,0-6,0-4) fuzzy-if(skiaContent&&!Android,0-1,0-34) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,7-7,38-39) skip-if(!asyncPan) == offscreen-clipped-blendmode-1.html offscreen-clipped-blendmode-ref.html # Bug 1604338
+fuzzy-if(Android,0-6,0-4) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,7-7,38-39) skip-if(!asyncPan) == offscreen-clipped-blendmode-2.html offscreen-clipped-blendmode-ref.html # Bug 1604338
@@ -55,2 +55,2 @@
--fuzzy-if(Android,0-6,0-4) fuzzy-if(webrender&&gtkWidget,34-35,28-32) fuzzy-if(webrender&&cocoaWidget,7-7,38-39) skip-if(!asyncPan) == offscreen-clipped-blendmode-4.html offscreen-clipped-blendmode-ref.html # Bug 1604338
--fuzzy-if(Android,0-7,0-1680) fuzzy-if(webrender&&gtkWidget&&!swgl,1-1,10-20) fuzzy-if(webrender&&cocoaWidget,1-2,16-18) skip-if(!asyncPan) == perspective-scrolling-1.html perspective-scrolling-1-ref.html # Bug 1604338
+-fuzzy-if(Android,0-6,0-4) fuzzy-if(webrender&&gtkWidget,22-74,20-32) fuzzy-if(webrender&&cocoaWidget,6-7,18-39) skip-if(!asyncPan) == offscreen-clipped-blendmode-4.html offscreen-clipped-blendmode-ref.html # Bug 1604338
+-fuzzy-if(Android,0-7,0-1680) fuzzy-if(webrender&&gtkWidget,1-1,2-20) fuzzy-if(webrender&&cocoaWidget,1-2,10-18) skip-if(!asyncPan) == perspective-scrolling-1.html perspective-scrolling-1-ref.html # Bug 1604338
+fuzzy-if(Android,0-6,0-4) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,7-7,38-39) skip-if(!asyncPan) == offscreen-clipped-blendmode-4.html offscreen-clipped-blendmode-ref.html # Bug 1604338
+fuzzy-if(Android,0-7,0-1680) fuzzy-if(webrender&&gtkWidget&&!swgl,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,1-2,16-18) skip-if(!asyncPan) == perspective-scrolling-1.html perspective-scrolling-1-ref.html # Bug 1604338
@@ -58,2 +58,2 @@
--fuzzy-if(Android,0-19,0-4) fuzzy-if(webrender&&gtkWidget,13-13,28-32) fuzzy-if(webrender&&cocoaWidget,13-13,44-44) skip-if(!asyncPan) == perspective-scrolling-3.html perspective-scrolling-3-ref.html # Bug 1604338
--fuzzy-if(Android,0-7,0-4) fuzzy-if(webrender&&gtkWidget,29-30,28-32) fuzzy-if(webrender&&cocoaWidget,19-20,44-44) skip-if(!asyncPan) == perspective-scrolling-4.html perspective-scrolling-4-ref.html # Bug 1604338
+-fuzzy-if(Android,0-19,0-4) fuzzy-if(webrender&&gtkWidget,8-13,12-32) fuzzy-if(webrender&&cocoaWidget,10-13,20-44) skip-if(!asyncPan) == perspective-scrolling-3.html perspective-scrolling-3-ref.html # Bug 1604338
+-fuzzy-if(Android,0-7,0-4) fuzzy-if(webrender&&gtkWidget,18-30,14-32) fuzzy-if(webrender&&cocoaWidget,16-20,20-44) skip-if(!asyncPan) == perspective-scrolling-4.html perspective-scrolling-4-ref.html # Bug 1604338
+fuzzy-if(Android,0-19,0-4) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,13-13,44-44) skip-if(!asyncPan) == perspective-scrolling-3.html perspective-scrolling-3-ref.html # Bug 1604338
+fuzzy-if(Android,0-7,0-4) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,19-20,44-44) skip-if(!asyncPan) == perspective-scrolling-4.html perspective-scrolling-4-ref.html # Bug 1604338
@@ -65,4 +65,4 @@
--fuzzy-if(Android,0-19,0-4) fuzzy-if(webrender&&gtkWidget,19-19,28-32) fuzzy-if(webrender&&cocoaWidget,21-21,44-44) skip-if(!asyncPan) == fixed-pos-scrolled-clip-1.html fixed-pos-scrolled-clip-1-ref.html # Bug 1604338
--fuzzy-if(Android,0-44,0-10) fuzzy-if(webrender&&gtkWidget,26-26,56-64) fuzzy-if(webrender&&cocoaWidget,13-13,81-82) fuzzy-if(winWidget&&!nativeThemePref,0-4,0-36) skip-if(!asyncPan) == fixed-pos-scrolled-clip-2.html fixed-pos-scrolled-clip-2-ref.html # Bug 1604338
--fuzzy-if(Android,0-6,0-8) fuzzy-if(webrender&&gtkWidget,28-28,30-60) fuzzy-if(swgl&&gtkWidget&&!nativeThemePref,29-29,30-30) fuzzy-if(webrender&&cocoaWidget,18-19,70-75) skip-if(!asyncPan) == fixed-pos-scrolled-clip-3.html fixed-pos-scrolled-clip-3-ref.html # Bug 1604338
--fuzzy-if(Android,0-6,0-8) fuzzy-if(webrender&&gtkWidget,28-29,30-60) fuzzy-if(webrender&&cocoaWidget,18-19,70-75) skip-if(!asyncPan) == fixed-pos-scrolled-clip-4.html fixed-pos-scrolled-clip-4-ref.html # Bug 1604338
+-fuzzy-if(Android,0-19,0-4) fuzzy-if(webrender&&gtkWidget,12-19,12-32) fuzzy-if(webrender&&cocoaWidget,17-21,20-44) skip-if(!asyncPan) == fixed-pos-scrolled-clip-1.html fixed-pos-scrolled-clip-1-ref.html # Bug 1604338
+-fuzzy-if(Android,0-44,0-10) fuzzy-if(webrender&&gtkWidget,16-26,26-64) fuzzy-if(webrender&&cocoaWidget,10-13,38-82) fuzzy-if(winWidget&&!nativeThemePref,0-4,0-36) skip-if(!asyncPan) == fixed-pos-scrolled-clip-2.html fixed-pos-scrolled-clip-2-ref.html # Bug 1604338
+-fuzzy-if(Android,0-6,0-8) fuzzy-if(webrender&&gtkWidget,17-28,24-60) fuzzy-if(webrender&&cocoaWidget,15-19,40-75) skip-if(!asyncPan) == fixed-pos-scrolled-clip-3.html fixed-pos-scrolled-clip-3-ref.html # Bug 1604338
+-fuzzy-if(Android,0-6,0-8) fuzzy-if(webrender&&gtkWidget,17-29,24-60) fuzzy-if(webrender&&cocoaWidget,15-19,40-75) skip-if(!asyncPan) == fixed-pos-scrolled-clip-4.html fixed-pos-scrolled-clip-4-ref.html # Bug 1604338
+fuzzy-if(Android,0-19,0-4) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,21-21,44-44) skip-if(!asyncPan) == fixed-pos-scrolled-clip-1.html fixed-pos-scrolled-clip-1-ref.html # Bug 1604338
+fuzzy-if(Android,0-44,0-10) fuzzy-if(webrender&&gtkWidget,0-100,0-100) fuzzy-if(webrender&&cocoaWidget,13-13,81-82) skip-if(!asyncPan) == fixed-pos-scrolled-clip-2.html fixed-pos-scrolled-clip-2-ref.html # Bug 1604338
+fuzzy-if(Android,0-6,0-8) fuzzy-if(webrender&&gtkWidget,0-50,0-100) fuzzy-if(webrender&&cocoaWidget,18-19,70-75) skip-if(!asyncPan) == fixed-pos-scrolled-clip-3.html fixed-pos-scrolled-clip-3-ref.html # Bug 1604338
+fuzzy-if(Android,0-6,0-8) fuzzy-if(webrender&&gtkWidget,0-50,0-100) fuzzy-if(webrender&&cocoaWidget,18-19,70-75) skip-if(!asyncPan) == fixed-pos-scrolled-clip-4.html fixed-pos-scrolled-clip-4-ref.html # Bug 1604338
@@ -71 +71 @@
--fuzzy-if(Android,0-8,0-4) fuzzy-if(webrender&&gtkWidget,25-25,28-32) fuzzy-if(webrender&&cocoaWidget,16-16,44-44) skip-if(!asyncPan) == position-sticky-scrolled-clip-1.html position-sticky-scrolled-clip-1-ref.html # Bug 1604338
+-fuzzy-if(Android,0-8,0-4) fuzzy-if(webrender&&gtkWidget,16-25,12-32) fuzzy-if(webrender&&cocoaWidget,13-16,20-44) skip-if(!asyncPan) == position-sticky-scrolled-clip-1.html position-sticky-scrolled-clip-1-ref.html # Bug 1604338
+fuzzy-if(Android,0-8,0-4) fuzzy-if(webrender&&gtkWidget,22-30,28-50) fuzzy-if(webrender&&cocoaWidget,16-16,44-44) skip-if(!asyncPan) == position-sticky-scrolled-clip-1.html position-sticky-scrolled-clip-1-ref.html # Bug 1604338
@@ -73,6 +73,6 @@
--fuzzy-if(Android,0-8,0-27) fuzzy-if(webrender&&cocoaWidget,10-11,44-44) skip-if(!asyncPan) == curtain-effect-1.html curtain-effect-1-ref.html
--fuzzy-if(Android,0-6,0-4) fuzzy-if(webrender&&gtkWidget,15-15,28-32) fuzzy-if(webrender&&cocoaWidget,8-8,38-42) skip-if(!asyncPan) == transformed-1.html transformed-1-ref.html # Bug 1604338
--fuzzy-if(Android&&!webrender,2-2,4-4) fuzzy-if(Android&&webrender,7-7,4-4) fuzzy-if(webrender&&gtkWidget&&!swgl,4-5,26-28) fuzzy-if(webrender&&cocoaWidget,6-6,37-38) skip-if(!asyncPan) == position-sticky-transformed-in-scrollframe-1.html position-sticky-transformed-in-scrollframe-1-ref.html # Bug 1604338
--fuzzy-if(Android&&!webrender,3-3,4-4) fuzzy-if(Android&&webrender,10-10,4-4) fuzzy-if(webrender&&gtkWidget,20-20,28-32) fuzzy-if(webrender&&cocoaWidget,15-16,44-44) skip-if(!asyncPan) == position-sticky-transformed-in-scrollframe-2.html position-sticky-transformed-in-scrollframe-2-ref.html # Bug 1604338
--fuzzy-if(Android&&!webrender,3-3,4-4) fuzzy-if(Android&&webrender,13-13,4-4) fuzzy-if(webrender&&gtkWidget,26-27,28-32) fuzzy-if(webrender&&cocoaWidget,16-16,44-44) skip-if(!asyncPan) == position-sticky-in-transformed-scrollframe-1.html position-sticky-in-transformed-scrollframe-ref.html # Bug 1604338
--fuzzy-if(Android&&!webrender,3-3,4-4) fuzzy-if(Android&&webrender,13-13,4-4) fuzzy-if(webrender&&gtkWidget,26-27,28-32) fuzzy-if(webrender&&cocoaWidget,16-16,44-44) skip-if(!asyncPan) == position-sticky-in-transformed-scrollframe-2.html position-sticky-in-transformed-scrollframe-ref.html # Bug 1604338
+-fuzzy-if(Android,0-8,0-27) fuzzy-if(webrender&&cocoaWidget,9-11,20-44) skip-if(!asyncPan) == curtain-effect-1.html curtain-effect-1-ref.html
+-fuzzy-if(Android,0-6,0-4) fuzzy-if(webrender&&gtkWidget,10-15,12-32) fuzzy-if(webrender&&cocoaWidget,5-9,20-42) skip-if(!asyncPan) == transformed-1.html transformed-1-ref.html # Bug 1604338
+-fuzzy-if(Android&&!webrender,2-2,4-4) fuzzy-if(Android&&webrender,7-7,4-4) fuzzy-if(webrender&&gtkWidget,3-5,12-28) fuzzy-if(webrender&&cocoaWidget,5-6,18-38) skip-if(!asyncPan) == position-sticky-transformed-in-scrollframe-1.html position-sticky-transformed-in-scrollframe-1-ref.html # Bug 1604338
+-fuzzy-if(Android&&!webrender,3-3,4-4) fuzzy-if(Android&&webrender,10-10,4-4) fuzzy-if(webrender&&gtkWidget,13-20,12-32) fuzzy-if(webrender&&cocoaWidget,12-16,20-44) skip-if(!asyncPan) == position-sticky-transformed-in-scrollframe-2.html position-sticky-transformed-in-scrollframe-2-ref.html # Bug 1604338
+-fuzzy-if(Android&&!webrender,3-3,4-4) fuzzy-if(Android&&webrender,13-13,4-4) fuzzy-if(webrender&&gtkWidget,16-27,14-32) fuzzy-if(webrender&&cocoaWidget,13-16,20-44) skip-if(!asyncPan) == position-sticky-in-transformed-scrollframe-1.html position-sticky-in-transformed-scrollframe-ref.html # Bug 1604338
+-fuzzy-if(Android&&!webrender,3-3,4-4) fuzzy-if(Android&&webrender,13-13,4-4) fuzzy-if(webrender&&gtkWidget,16-27,14-32) fuzzy-if(webrender&&cocoaWidget,13-16,20-44) skip-if(!asyncPan) == position-sticky-in-transformed-scrollframe-2.html position-sticky-in-transformed-scrollframe-ref.html # Bug 1604338
+fuzzy-if(Android,0-8,0-27) fuzzy-if(webrender&&gtkWidget,0-17,0-50) fuzzy-if(webrender&&cocoaWidget,10-11,44-44) skip-if(!asyncPan) == curtain-effect-1.html curtain-effect-1-ref.html
+fuzzy-if(Android,0-6,0-4) fuzzy-if(webrender&&gtkWidget,10-16,28-41) fuzzy-if(webrender&&cocoaWidget,8-8,38-42) skip-if(!asyncPan) == transformed-1.html transformed-1-ref.html # Bug 1604338
+fuzzy-if(Android&&!webrender,2-2,4-4) fuzzy-if(Android&&webrender,7-7,4-4) fuzzy-if(webrender&&gtkWidget&&!swgl,0-22,0-50) fuzzy-if(webrender&&cocoaWidget,6-6,37-38) skip-if(!asyncPan) == position-sticky-transformed-in-scrollframe-1.html position-sticky-transformed-in-scrollframe-1-ref.html # Bug 1604338
+fuzzy-if(Android&&!webrender,3-3,4-4) fuzzy-if(Android&&webrender,10-10,4-4) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,15-16,44-44) skip-if(!asyncPan) == position-sticky-transformed-in-scrollframe-2.html position-sticky-transformed-in-scrollframe-2-ref.html # Bug 1604338
+fuzzy-if(Android&&!webrender,3-3,4-4) fuzzy-if(Android&&webrender,13-13,4-4) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,16-16,44-44) skip-if(!asyncPan) == position-sticky-in-transformed-scrollframe-1.html position-sticky-in-transformed-scrollframe-ref.html # Bug 1604338
+fuzzy-if(Android&&!webrender,3-3,4-4) fuzzy-if(Android&&webrender,13-13,4-4) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,16-16,44-44) skip-if(!asyncPan) == position-sticky-in-transformed-scrollframe-2.html position-sticky-in-transformed-scrollframe-ref.html # Bug 1604338
-diff -U0 firefox-87.0/layout/reftests/bidi/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/bidi/reftest.list
---- firefox-87.0/layout/reftests/bidi/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/bidi/reftest.list 2021-03-25 18:32:51.616417722 +0100
+diff -U0 firefox-88.0/layout/reftests/bidi/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/bidi/reftest.list
+--- firefox-88.0/layout/reftests/bidi/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/bidi/reftest.list 2021-04-19 14:23:12.313742857 +0200
@@ -3 +3 @@
-fuzzy-if(cocoaWidget,0-1,0-1) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == bdi-element.html bdi-element-ref.html # Bug 1392106
+fuzzy(0-1,0-1) fuzzy-if(cocoaWidget,0-1,0-1) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == bdi-element.html bdi-element-ref.html # Bug 1392106
@@ -125,14 +125,14 @@ diff -U0 firefox-87.0/layout/reftests/bidi/reftest.list.firefox-tests-reftest fi
+fuzzy-if(gtkWidget,0-1,0-3) fuzzy-if(Android,0-1,0-6) fuzzy-if(cocoaWidget,0-1,0-2) == mixedChartype-02.html mixedChartype-02-ref.html
+fuzzy-if(gtkWidget,0-1,0-3) fuzzy-if(Android,0-1,0-6) fuzzy-if(cocoaWidget,0-1,0-2) == mixedChartype-02-j.html mixedChartype-02-ref.html
@@ -163,8 +163,8 @@
--fuzzy-if(Android,0-1,0-6) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2a-ltr.html brackets-2a-ltr-ref.html # Bug 1392106
+-fuzzy-if(cocoaWidget,0-1,0-4) fuzzy-if(Android,0-1,0-6) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2a-ltr.html brackets-2a-ltr-ref.html # Bug 1392106
-fuzzy-if(cocoaWidget,0-1,0-2) fuzzy-if(Android,0-254,0-557) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2a-rtl.html brackets-2a-rtl-ref.html # Bug 1392106
--fuzzy-if(Android,0-1,0-8) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2b-ltr.html brackets-2b-ltr-ref.html # Bug 1392106
--fuzzy-if(cocoaWidget,0-1,0-2) fuzzy-if(Android,0-1,0-6) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2b-rtl.html brackets-2b-rtl-ref.html # Bug 1392106
--fuzzy-if(cocoaWidget,0-1,0-2) fuzzy-if(Android,0-1,0-6) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2c-ltr.html brackets-2c-ltr-ref.html # Bug 1392106
--fuzzy-if(Android,0-254,0-231) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2c-rtl.html brackets-2c-rtl-ref.html # Bug 1392106
--fuzzy-if(cocoaWidget,0-1,0-3) fuzzy-if(Android,0-1,0-8) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-3a-ltr.html brackets-3a-ltr-ref.html # Bug 1392106
--fuzzy-if(cocoaWidget,0-1,0-2) fuzzy-if(Android,0-1,0-6) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-3a-rtl.html brackets-3a-rtl-ref.html # Bug 1392106
+-fuzzy-if(cocoaWidget,0-1,0-6) fuzzy-if(Android,0-1,0-8) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2b-ltr.html brackets-2b-ltr-ref.html # Bug 1392106
+-fuzzy-if(cocoaWidget,0-1,0-7) fuzzy-if(Android,0-1,0-6) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2b-rtl.html brackets-2b-rtl-ref.html # Bug 1392106
+-fuzzy-if(cocoaWidget,0-1,0-7) fuzzy-if(Android,0-1,0-6) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2c-ltr.html brackets-2c-ltr-ref.html # Bug 1392106
+-fuzzy-if(cocoaWidget,0-1,0-6) fuzzy-if(Android,0-254,0-231) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2c-rtl.html brackets-2c-rtl-ref.html # Bug 1392106
+-fuzzy-if(cocoaWidget,0-1,0-6) fuzzy-if(Android,0-1,0-8) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-3a-ltr.html brackets-3a-ltr-ref.html # Bug 1392106
+-fuzzy-if(cocoaWidget,0-1,0-3) fuzzy-if(Android,0-1,0-6) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-3a-rtl.html brackets-3a-rtl-ref.html # Bug 1392106
+fuzzy(0-1,0-6) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2a-ltr.html brackets-2a-ltr-ref.html # Bug 1392106
+fuzzy(0-64,0-140) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2a-rtl.html brackets-2a-rtl-ref.html # Bug 1392106
+fuzzy(0-1,0-8) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2b-ltr.html brackets-2b-ltr-ref.html # Bug 1392106
@@ -141,15 +141,15 @@ diff -U0 firefox-87.0/layout/reftests/bidi/reftest.list.firefox-tests-reftest fi
+fuzzy(0-254,0-231) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-2c-rtl.html brackets-2c-rtl-ref.html # Bug 1392106
+fuzzy(0-1,0-8) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-3a-ltr.html brackets-3a-ltr-ref.html # Bug 1392106
+fuzzy(0-1,0-6) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == brackets-3a-rtl.html brackets-3a-rtl-ref.html # Bug 1392106
-diff -U0 firefox-87.0/layout/reftests/border-radius/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/border-radius/reftest.list
---- firefox-87.0/layout/reftests/border-radius/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/border-radius/reftest.list 2021-03-25 18:32:51.616417722 +0100
+diff -U0 firefox-88.0/layout/reftests/border-radius/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/border-radius/reftest.list
+--- firefox-88.0/layout/reftests/border-radius/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/border-radius/reftest.list 2021-04-19 13:52:26.652141847 +0200
@@ -54 +54 @@
-fuzzy-if(Android,0-8,0-469) fuzzy-if(skiaContent,0-21,0-76) fuzzy-if(winWidget,0-144,0-335) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == clipping-6.html clipping-6-ref.html # PaintedLayer and MaskLayer with transforms that aren't identical, bug 1392106
+fuzzy-if(gtkWidget,0-80,0-300) fuzzy-if(Android,0-8,0-469) fuzzy-if(winWidget,0-144,0-335) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == clipping-6.html clipping-6-ref.html # PaintedLayer and MaskLayer with transforms that aren't identical, bug 1392106
-diff -U0 firefox-87.0/layout/reftests/bugs/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/bugs/reftest.list
---- firefox-87.0/layout/reftests/bugs/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/bugs/reftest.list 2021-03-25 18:32:51.616417722 +0100
+diff -U0 firefox-88.0/layout/reftests/bugs/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/bugs/reftest.list
+--- firefox-88.0/layout/reftests/bugs/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/layout/reftests/bugs/reftest.list 2021-04-19 14:27:52.647189221 +0200
@@ -464 +463,0 @@
-== 341043-1a.html 341043-1-ref.html
@@ -553 +552 @@
@@ -161,61 +161,61 @@ diff -U0 firefox-87.0/layout/reftests/bugs/reftest.list.firefox-tests-reftest fi
@@ -763 +762 @@
-== 389074-1.html 389074-1-ref.html
+fuzzy-if(gtkWidget,0-150,0-80) == 389074-1.html 389074-1-ref.html
-@@ -927 +926 @@
+@@ -926 +925 @@
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 411059-1.html 411059-1-ref.html # Bug 1392106
+fuzzy-if(gtkWidget,0-255,0-6312) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 411059-1.html 411059-1-ref.html # Bug 1392106
-@@ -1001 +1000 @@
+@@ -1000 +999 @@
-== 422394-1.html 422394-1-ref.html
+fuzzy-if(gtkWidget,0-255,0-640) == 422394-1.html 422394-1-ref.html
-@@ -1176 +1175 @@
+@@ -1175 +1174 @@
-fails-if(Android||cocoaWidget||winWidget) == chrome://reftest/content/bugs/456147.xhtml 456147-ref.html # bug 458047
+fuzzy-if(gtkWidget,0-255,0-5167) fails-if(Android||cocoaWidget||winWidget) == chrome://reftest/content/bugs/456147.xhtml 456147-ref.html # bug 458047
-@@ -1386 +1385 @@
--fuzzy-if(webrender&&winWidget,82-82,84-84) == 513153-2a.html 513153-2-ref.html
+@@ -1385 +1384 @@
+-fuzzy-if(winWidget&&nativeThemePref&&webrender,82-82,84-84) fuzzy-if(cocoaWidget&&nativeThemePref&&webrender,46-46,58-58) == 513153-2a.html 513153-2-ref.html
+fuzzy(0-61,0-172) fuzzy-if(webrender&&winWidget,82-82,84-84) == 513153-2a.html 513153-2-ref.html
-@@ -1824 +1823 @@
+@@ -1823 +1822 @@
-== 1062108-1.html 1062108-1-ref.html
+fuzzy-if(gtkWidget,0-255,0-53) == 1062108-1.html 1062108-1-ref.html
-@@ -2026 +2024,0 @@
+@@ -2025 +2023,0 @@
-!= 1404057.html 1404057-noref.html
-@@ -2066,2 +2064 @@
--fuzzy-if(!webrender,1-5,66-547) fuzzy-if(geckoview&&!webrender,1-2,64-141) fuzzy-if(winWidget&&swgl,1-1,16-16) == 1529992-1.html 1529992-1-ref.html
+@@ -2065,2 +2063 @@
+-fuzzy-if(!webrender,1-5,66-547) fuzzy-if(geckoview&&!webrender,1-2,64-141) fuzzy-if(winWidget&&swgl,1-1,16-16) fuzzy-if(cocoaWidget&&swgl,1-1,32-32) == 1529992-1.html 1529992-1-ref.html
-fuzzy-if(!webrender,0-6,0-34) fuzzy-if(Android,9-14,44-60) fails-if(webrender) == 1529992-2.html 1529992-2-ref.html
+fuzzy(0-13,0-154) fuzzy-if(Android,9-14,44-60) fails-if(webrender) == 1529992-2.html 1529992-2-ref.html
-@@ -2070 +2067 @@
+@@ -2069 +2066 @@
-skip-if(!asyncPan) == 1544895.html 1544895-ref.html
+fuzzy-if(gtkWidget,0-252,0-24) skip-if(!asyncPan) == 1544895.html 1544895-ref.html
-@@ -2083 +2080 @@
+@@ -2082 +2079 @@
-fuzzy-if(winWidget&&webrender,0-31,0-3) fuzzy-if(geckoview&&webrender,0-93,0-87) == 1562733-rotated-nastaliq-2.html 1562733-rotated-nastaliq-2-ref.html
+fuzzy(0-30,0-2) fuzzy-if(winWidget&&webrender,0-31,0-3) fuzzy-if(geckoview&&webrender,0-93,0-87) == 1562733-rotated-nastaliq-2.html 1562733-rotated-nastaliq-2-ref.html
-diff -U0 firefox-87.0/layout/reftests/canvas/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/canvas/reftest.list
---- firefox-87.0/layout/reftests/canvas/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/canvas/reftest.list 2021-03-25 18:32:51.616417722 +0100
+diff -U0 firefox-88.0/layout/reftests/canvas/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/canvas/reftest.list
+--- firefox-88.0/layout/reftests/canvas/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/canvas/reftest.list 2021-04-19 13:52:26.652141847 +0200
@@ -51,2 +50,0 @@
-!= text-font-lang.html text-font-lang-notref.html
-
@@ -54 +52 @@
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == text-small-caps-1.html text-small-caps-1-ref.html # Bug 1392106
+fuzzy-if(gtkWidget,0-255,0-2304) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == text-small-caps-1.html text-small-caps-1-ref.html # Bug 1392106
-diff -U0 firefox-87.0/layout/reftests/css-break/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/css-break/reftest.list
---- firefox-87.0/layout/reftests/css-break/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/css-break/reftest.list 2021-03-25 18:32:51.616417722 +0100
+diff -U0 firefox-88.0/layout/reftests/css-break/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/css-break/reftest.list
+--- firefox-88.0/layout/reftests/css-break/reftest.list.firefox-tests-reftest 2021-04-19 13:52:26.652141847 +0200
++++ firefox-88.0/layout/reftests/css-break/reftest.list 2021-04-19 13:56:26.987380445 +0200
@@ -1,3 +1,3 @@
-== box-decoration-break-1.html box-decoration-break-1-ref.html
-fuzzy(0-1,0-20) fuzzy-if(skiaContent,0-1,0-700) == box-decoration-break-with-inset-box-shadow-1.html box-decoration-break-with-inset-box-shadow-1-ref.html
--skip-if(verify) fuzzy(0-45,0-460) fuzzy-if(skiaContent,0-57,0-439) fuzzy-if(Android,0-70,0-1330) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == box-decoration-break-with-outset-box-shadow-1.html box-decoration-break-with-outset-box-shadow-1-ref.html # Bug 1386543, bug 1392106
+-skip-if(verify) fuzzy(0-45,0-460) fuzzy-if(skiaContent,0-64,0-484) fuzzy-if(Android,0-70,0-1330) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == box-decoration-break-with-outset-box-shadow-1.html box-decoration-break-with-outset-box-shadow-1-ref.html # Bug 1386543, bug 1392106
+fuzzy-if(gtkWidget,0-255,0-4972) == box-decoration-break-1.html box-decoration-break-1-ref.html
+fuzzy-if(gtkWidget,0-255,0-22330) fuzzy-if(skiaContent,0-1,0-700) == box-decoration-break-with-inset-box-shadow-1.html box-decoration-break-with-inset-box-shadow-1-ref.html
-+skip-if(verify) fuzzy(0-73,0-264) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == box-decoration-break-with-outset-box-shadow-1.html box-decoration-break-with-outset-box-shadow-1-ref.html # Bug 1386543, bug 1392106
-diff -U0 firefox-87.0/layout/reftests/css-placeholder/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/css-placeholder/reftest.list
---- firefox-87.0/layout/reftests/css-placeholder/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/css-placeholder/reftest.list 2021-03-25 18:32:51.616417722 +0100
++skip-if(verify) fuzzy(0-75,0-460) fuzzy-if(skiaContent,0-64,0-484) fuzzy-if(Android,0-70,0-1330) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == box-decoration-break-with-outset-box-shadow-1.html box-decoration-break-with-outset-box-shadow-1-ref.html # Bug 1386543, bug 1392106
+diff -U0 firefox-88.0/layout/reftests/css-placeholder/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/css-placeholder/reftest.list
+--- firefox-88.0/layout/reftests/css-placeholder/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/css-placeholder/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -5 +5 @@
-fuzzy-if(gtkWidget&&nativeThemePref,255-255,1376-1881) == css-simple-styling.html css-simple-styling-ref.html # gtkWidget, Bug 1600749
+fuzzy-if(gtkWidget&&nativeThemePref,255-255,1300-1881) == css-simple-styling.html css-simple-styling-ref.html # gtkWidget, Bug 1600749
-diff -U0 firefox-87.0/layout/reftests/css-ruby/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/css-ruby/reftest.list
---- firefox-87.0/layout/reftests/css-ruby/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/css-ruby/reftest.list 2021-03-25 18:32:51.616417722 +0100
+diff -U0 firefox-88.0/layout/reftests/css-ruby/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/css-ruby/reftest.list
+--- firefox-88.0/layout/reftests/css-ruby/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/css-ruby/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -17,4 +17,4 @@
-== relative-positioning-2.html relative-positioning-2-ref.html
-== ruby-position-horizontal.html ruby-position-horizontal-ref.html
@@ -231,15 +231,15 @@ diff -U0 firefox-87.0/layout/reftests/css-ruby/reftest.list.firefox-tests-reftes
@@ -28 +28 @@
-pref(layout.css.ruby.intercharacter.enabled,true) == ruby-intercharacter-2.htm ruby-intercharacter-2-ref.htm
+fuzzy-if(gtkWidget,0-255,0-219) pref(layout.css.ruby.intercharacter.enabled,true) == ruby-intercharacter-2.htm ruby-intercharacter-2-ref.htm
-diff -U0 firefox-87.0/layout/reftests/first-letter/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/first-letter/reftest.list
---- firefox-87.0/layout/reftests/first-letter/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/first-letter/reftest.list 2021-03-25 18:32:51.616417722 +0100
+diff -U0 firefox-88.0/layout/reftests/first-letter/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/first-letter/reftest.list
+--- firefox-88.0/layout/reftests/first-letter/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/first-letter/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -64 +64 @@
-fails-if(winWidget||cocoaWidget) fails-if(geckoview) == 617869-1.html 617869-1-ref.html # Bug 1558513 for GV
+fuzzy-if(gtkWidget,0-260,0-900) fails-if(winWidget||cocoaWidget) fails-if(geckoview) == 617869-1.html 617869-1-ref.html # Bug 1558513 for GV
-diff -U0 firefox-87.0/layout/reftests/font-face/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/font-face/reftest.list
---- firefox-87.0/layout/reftests/font-face/reftest.list.firefox-tests-reftest 2021-03-18 14:48:54.000000000 +0100
-+++ firefox-87.0/layout/reftests/font-face/reftest.list 2021-03-29 16:23:35.927490810 +0200
+diff -U0 firefox-88.0/layout/reftests/font-face/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/font-face/reftest.list
+--- firefox-88.0/layout/reftests/font-face/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/font-face/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -9 +9 @@
-== name-override-simple-1.html name-override-simple-1-ref.html
+fuzzy-if(gtkWidget,0-112,0-107) == name-override-simple-1.html name-override-simple-1-ref.html
@@ -275,9 +275,9 @@ diff -U0 firefox-87.0/layout/reftests/font-face/reftest.list.firefox-tests-refte
@@ -204 +203 @@
-# Currently Windows 7 and macOS all fail on
+# Currently Windows 7 and macOS all fail on
-diff -U0 firefox-87.0/layout/reftests/font-matching/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/font-matching/reftest.list
---- firefox-87.0/layout/reftests/font-matching/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/font-matching/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/font-matching/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/font-matching/reftest.list
+--- firefox-88.0/layout/reftests/font-matching/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/layout/reftests/font-matching/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -124 +124 @@
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == italic-oblique-2.html italic-oblique-ref.html # Bug 1392106
+fuzzy-if(gtkWidget,0-104,0-1836) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == italic-oblique-2.html italic-oblique-ref.html # Bug 1392106
@@ -289,61 +289,61 @@ diff -U0 firefox-87.0/layout/reftests/font-matching/reftest.list.firefox-tests-r
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == italic-oblique-9.html italic-oblique-ref.html # Bug 1392106
+fuzzy-if(gtkWidget,0-104,0-1836) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == italic-oblique-8.html italic-oblique-ref.html # Bug 1392106
+fuzzy-if(gtkWidget,0-104,0-1836) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == italic-oblique-9.html italic-oblique-ref.html # Bug 1392106
-diff -U0 firefox-87.0/layout/reftests/forms/fieldset/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/forms/fieldset/reftest.list
---- firefox-87.0/layout/reftests/forms/fieldset/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/forms/fieldset/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/forms/fieldset/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/forms/fieldset/reftest.list
+--- firefox-88.0/layout/reftests/forms/fieldset/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/forms/fieldset/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -8 +8 @@
-fuzzy-if(winWidget&&!layersGPUAccelerated,0-142,0-276) == positioned-container-1.html positioned-container-1-ref.html
+fuzzy-if(gtkWidget,0-100,0-305) fuzzy-if(winWidget&&!layersGPUAccelerated,0-142,0-276) == positioned-container-1.html positioned-container-1-ref.html
-diff -U0 firefox-87.0/layout/reftests/forms/input/checkbox/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/forms/input/checkbox/reftest.list
---- firefox-87.0/layout/reftests/forms/input/checkbox/reftest.list.firefox-tests-reftest 2021-03-18 14:48:54.000000000 +0100
-+++ firefox-87.0/layout/reftests/forms/input/checkbox/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/forms/input/checkbox/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/forms/input/checkbox/reftest.list
+--- firefox-88.0/layout/reftests/forms/input/checkbox/reftest.list.firefox-tests-reftest 2021-04-19 13:52:26.653141877 +0200
++++ firefox-88.0/layout/reftests/forms/input/checkbox/reftest.list 2021-04-19 14:24:26.567980111 +0200
@@ -18 +18 @@
--skip-if(OSX||winWidget) fails-if(geckoview&&webrender) fuzzy-if(gtkWidget&&nativeThemePref,25-25,32-32) fails-if(Android&&nativeThemePref) == checkbox-clamp-02.html checkbox-clamp-02-ref.html
+-skip-if((OSX||winWidget)&&nativeThemePref) fuzzy-if(gtkWidget&&nativeThemePref,25-25,32-32) fails-if(Android&&nativeThemePref) == checkbox-clamp-02.html checkbox-clamp-02-ref.html
+skip-if(OSX||winWidget) fails-if(geckoview&&webrender) fuzzy-if(gtkWidget&&nativeThemePref,12-25,25-32) fails-if(Android) == checkbox-clamp-02.html checkbox-clamp-02-ref.html
-diff -U0 firefox-87.0/layout/reftests/forms/input/radio/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/forms/input/radio/reftest.list
---- firefox-87.0/layout/reftests/forms/input/radio/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/forms/input/radio/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/forms/input/radio/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/forms/input/radio/reftest.list
+--- firefox-88.0/layout/reftests/forms/input/radio/reftest.list.firefox-tests-reftest 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/layout/reftests/forms/input/radio/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -9 +9 @@
-skip-if(OSX||winWidget||Android) fuzzy-if(gtkWidget&&nativeThemePref,24-24,16-16) == radio-clamp-02.html radio-clamp-02-ref.html # gtkWidget, Bug 1599622
+skip-if(OSX||winWidget||Android) fuzzy-if(gtkWidget&&nativeThemePref,10-24,16-16) == radio-clamp-02.html radio-clamp-02-ref.html # gtkWidget, Bug 1599622
-diff -U0 firefox-87.0/layout/reftests/forms/placeholder/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/forms/placeholder/reftest.list
---- firefox-87.0/layout/reftests/forms/placeholder/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/forms/placeholder/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/forms/placeholder/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/forms/placeholder/reftest.list
+--- firefox-88.0/layout/reftests/forms/placeholder/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/forms/placeholder/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -21 +21 @@
-fuzzy-if(winWidget,0-160,0-10) fuzzy-if(Android,0-160,0-41) fuzzy-if(asyncPan&&!layersGPUAccelerated,0-146,0-317) fuzzy-if(OSX==1010&&browserIsRemote,0-1,0-8) == placeholder-6.html placeholder-overflow-ref.html
+fuzzy-if(gtkWidget,0-255,0-341) fuzzy-if(winWidget,0-160,0-10) fuzzy-if(Android,0-160,0-41) fuzzy-if(OSX==1010&&browserIsRemote,0-1,0-8) == placeholder-6.html placeholder-overflow-ref.html
-diff -U0 firefox-87.0/layout/reftests/forms/textbox/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/forms/textbox/reftest.list
---- firefox-87.0/layout/reftests/forms/textbox/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/forms/textbox/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/forms/textbox/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/forms/textbox/reftest.list
+--- firefox-88.0/layout/reftests/forms/textbox/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/forms/textbox/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -4 +4 @@
-fuzzy-if(winWidget,0-1,0-3) skip-if(cocoaWidget||Android) fails-if(webrender) == chrome://reftest/content/forms/textbox/accesskey-2.xhtml chrome://reftest/content/forms/textbox/accesskey-2-ref.xhtml
+fuzzy-if(gtkWidget,0-1,0-21) fuzzy-if(winWidget,0-1,0-3) skip-if(cocoaWidget||Android) fails-if(webrender) == chrome://reftest/content/forms/textbox/accesskey-2.xhtml chrome://reftest/content/forms/textbox/accesskey-2-ref.xhtml
@@ -8 +8 @@
-fuzzy-if(winWidget,0-1,0-3) skip-if(cocoaWidget||Android) fails-if(webrender&&!Android) == chrome://reftest/content/forms/textbox/accesskey-4.xhtml chrome://reftest/content/forms/textbox/accesskey-4-ref.xhtml
+fuzzy-if(gtkWidget,0-1,0-21) fuzzy-if(winWidget,0-1,0-3) skip-if(cocoaWidget||Android) fails-if(webrender&&!Android) == chrome://reftest/content/forms/textbox/accesskey-4.xhtml chrome://reftest/content/forms/textbox/accesskey-4-ref.xhtml
-diff -U0 firefox-87.0/layout/reftests/generated-content/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/generated-content/reftest.list
---- firefox-87.0/layout/reftests/generated-content/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/generated-content/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/generated-content/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/generated-content/reftest.list
+--- firefox-88.0/layout/reftests/generated-content/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/generated-content/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -16 +16 @@
-fuzzy-if(OSX==1010,0-1,0-10) == quotes-001.xml quotes-001-ref.xml
+fuzzy(0-128,0-737) fuzzy-if(OSX==1010,0-1,0-10) == quotes-001.xml quotes-001-ref.xml
-diff -U0 firefox-87.0/layout/reftests/high-contrast/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/high-contrast/reftest.list
---- firefox-87.0/layout/reftests/high-contrast/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/high-contrast/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/high-contrast/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/high-contrast/reftest.list
+--- firefox-88.0/layout/reftests/high-contrast/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/high-contrast/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -22 +22 @@
-fuzzy-if(cocoaWidget,255-255,1495-1495) fuzzy-if(winWidget,255-255,353-353) fuzzy-if(Android,255-255,700-700) == backplate-bg-image-010.html backplate-bg-image-010-ref.html
+fuzzy-if(gtkWidget,0-255,0-1495) fuzzy-if(cocoaWidget,255-255,1495-1495) fuzzy-if(winWidget,255-255,353-353) fuzzy-if(Android,255-255,700-700) == backplate-bg-image-010.html backplate-bg-image-010-ref.html
-diff -U0 firefox-87.0/layout/reftests/indic-shaping/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/indic-shaping/reftest.list
---- firefox-87.0/layout/reftests/indic-shaping/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/indic-shaping/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/indic-shaping/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/indic-shaping/reftest.list
+--- firefox-88.0/layout/reftests/indic-shaping/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/indic-shaping/reftest.list 2021-04-19 13:52:26.653141877 +0200
@@ -12 +11,0 @@
-fuzzy-if(gtkWidget,255-255,46-46) == gujarati-3b.html gujarati-3-ref.html # gtkWidget, Bug 1600777
-diff -U0 firefox-87.0/layout/reftests/mathml/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/mathml/reftest.list
---- firefox-87.0/layout/reftests/mathml/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/mathml/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/mathml/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/mathml/reftest.list
+--- firefox-88.0/layout/reftests/mathml/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/layout/reftests/mathml/reftest.list 2021-04-19 14:23:50.519893996 +0200
@@ -26 +26 @@
--random-if(smallScreen&&Android) fuzzy(0-255,0-200) fuzzy-if(geckoview&&webrender,201-216,312-316) fuzzy-if(webrender&&winWidget,114-255,245-361) fuzzy-if(webrender&&OSX,79-153,307-314) == mirror-op-1.html mirror-op-1-ref.html
+-random-if(smallScreen&&Android) fuzzy(0-255,0-200) fuzzy-if(geckoview&&webrender,201-216,200-250) fuzzy-if(webrender&&winWidget,114-255,245-361) fuzzy-if(webrender&&OSX,79-153,240-250) == mirror-op-1.html mirror-op-1-ref.html
+random-if(smallScreen&&Android) fuzzy(0-255,0-350) fuzzy-if(geckoview&&webrender,201-216,312-316) fuzzy-if(webrender&&winWidget,114-255,245-361) fuzzy-if(webrender&&OSX,79-153,307-314) == mirror-op-1.html mirror-op-1-ref.html
@@ -66 +66 @@
-== stretchy-largeop-2.html stretchy-largeop-2-ref.html
@@ -352,9 +352,9 @@ diff -U0 firefox-87.0/layout/reftests/mathml/reftest.list.firefox-tests-reftest
-fuzzy-if(skiaContent,0-1,0-80) fuzzy-if(Android,0-255,0-105) fuzzy-if(gtkWidget,255-255,96-96) skip-if(winWidget) == multiscripts-1.html multiscripts-1-ref.html # Windows: bug 1314684; Android: bug 1392254; Linux: bug 1599638
@@ -256 +254,0 @@
-fails-if(winWidget) fuzzy-if(gtkWidget,255-255,776226-776226) == subscript-italic-correction.html subscript-italic-correction-ref.html # bug 961482 (Windows), bug 1599640 (Linux)
-diff -U0 firefox-87.0/layout/reftests/position-dynamic-changes/relative/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/position-dynamic-changes/relative/reftest.list
---- firefox-87.0/layout/reftests/position-dynamic-changes/relative/reftest.list.firefox-tests-reftest 2021-03-18 14:49:01.000000000 +0100
-+++ firefox-87.0/layout/reftests/position-dynamic-changes/relative/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/position-dynamic-changes/relative/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/position-dynamic-changes/relative/reftest.list
+--- firefox-88.0/layout/reftests/position-dynamic-changes/relative/reftest.list.firefox-tests-reftest 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/layout/reftests/position-dynamic-changes/relative/reftest.list 2021-04-19 13:52:26.654141907 +0200
@@ -1,4 +1,4 @@
-fuzzy-if(cocoaWidget,0-1,0-2) fuzzy-if(d2d,0-47,0-26) fuzzy-if(asyncPan&&!layersGPUAccelerated,0-169,0-970) == move-right-bottom.html move-right-bottom-ref.html
-fuzzy-if(cocoaWidget,0-1,0-2) fuzzy-if(asyncPan&&!layersGPUAccelerated,0-169,0-970) == move-top-left.html move-top-left-ref.html # Bug 688545
@@ -364,18 +364,18 @@ diff -U0 firefox-87.0/layout/reftests/position-dynamic-changes/relative/reftest.
+fuzzy-if(gtkWidget,0-99,0-1254) fuzzy-if(cocoaWidget,0-1,0-2) == move-top-left.html move-top-left-ref.html # Bug 688545
+fuzzy-if(gtkWidget,0-103,0-637) fuzzy-if(cocoaWidget,0-1,0-3) == move-right-bottom-table.html move-right-bottom-table-ref.html
+fuzzy-if(gtkWidget,0-103,0-637) fuzzy-if(cocoaWidget,0-1,0-3) == move-top-left-table.html move-top-left-table-ref.html # Bug 688545
-diff -U0 firefox-87.0/layout/reftests/position-sticky/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/position-sticky/reftest.list
---- firefox-87.0/layout/reftests/position-sticky/reftest.list.firefox-tests-reftest 2021-03-18 14:48:54.000000000 +0100
-+++ firefox-87.0/layout/reftests/position-sticky/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/position-sticky/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/position-sticky/reftest.list
+--- firefox-88.0/layout/reftests/position-sticky/reftest.list.firefox-tests-reftest 2021-04-19 13:52:26.654141907 +0200
++++ firefox-88.0/layout/reftests/position-sticky/reftest.list 2021-04-19 14:25:15.862465345 +0200
@@ -53,3 +53,2 @@
--fuzzy-if(Android,0-4,0-4) fuzzy-if(webrender&&gtkWidget,16-17,28-32) fuzzy-if(webrender&&cocoaWidget,8-8,38-42) skip-if(!asyncPan) == transformed-2.html transformed-2-ref.html # Bug 1604644
--skip-if(!asyncPan) fuzzy-if(Android,0-10,0-4) fuzzy-if(webrender&&gtkWidget,29-30,28-32) fuzzy-if(webrender&&cocoaWidget,15-16,44-44) == nested-sticky-1.html nested-sticky-1-ref.html # Bug 1604644
--skip-if(!asyncPan) fuzzy-if(Android,0-10,0-4) fuzzy-if(webrender&&gtkWidget,29-30,28-32) fuzzy-if(webrender&&cocoaWidget,15-16,44-44) fuzzy-if(/^Windows\x20NT\x206\.1/.test(http.oscpu),0-4,0-104) == nested-sticky-2.html nested-sticky-2-ref.html # Bug 1604644
+-fuzzy-if(Android,0-4,0-4) fuzzy-if(webrender&&gtkWidget,10-17,12-32) fuzzy-if(webrender&&cocoaWidget,7-8,18-42) skip-if(!asyncPan) == transformed-2.html transformed-2-ref.html # Bug 1604644
+-skip-if(!asyncPan) fuzzy-if(Android,0-10,0-4) fuzzy-if(webrender&&gtkWidget,19-30,12-32) fuzzy-if(webrender&&cocoaWidget,13-16,20-44) == nested-sticky-1.html nested-sticky-1-ref.html # Bug 1604644
+-skip-if(!asyncPan) fuzzy-if(Android,0-10,0-4) fuzzy-if(webrender&&gtkWidget,19-30,12-32) fuzzy-if(webrender&&cocoaWidget,13-16,20-44) fuzzy-if(/^Windows\x20NT\x206\.1/.test(http.oscpu),0-4,0-104) == nested-sticky-2.html nested-sticky-2-ref.html # Bug 1604644
+skip-if(!asyncPan) fuzzy-if(Android,0-10,0-4) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,15-16,44-44) == nested-sticky-1.html nested-sticky-1-ref.html # Bug 1604644
+skip-if(!asyncPan) fuzzy-if(Android,0-10,0-4) fuzzy-if(webrender&&gtkWidget,0-50,0-50) fuzzy-if(webrender&&cocoaWidget,15-16,44-44) fuzzy-if(/^Windows\x20NT\x206\.1/.test(http.oscpu),0-4,0-104) == nested-sticky-2.html nested-sticky-2-ref.html # Bug 1604644
-diff -U0 firefox-87.0/layout/reftests/reftest-sanity/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/reftest-sanity/reftest.list
---- firefox-87.0/layout/reftests/reftest-sanity/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/reftest-sanity/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/reftest-sanity/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/reftest-sanity/reftest.list
+--- firefox-88.0/layout/reftests/reftest-sanity/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/reftest-sanity/reftest.list 2021-04-19 13:52:26.654141907 +0200
@@ -131,6 +131,6 @@
-pref(font.default.x-western,"serif") == font-serif.html font-default.html
-pref(font.default.x-western,"serif") != font-sans-serif.html font-default.html
@@ -389,9 +389,9 @@ diff -U0 firefox-87.0/layout/reftests/reftest-sanity/reftest.list.firefox-tests-
+#pref(font.default.x-western,"sans-serif") != font-serif.html font-default.html
+#fails pref(font.default.x-western,true) == font-serif.html font-default.html
+#fails pref(font.default.x-western,0) == font-serif.html font-default.html
-diff -U0 firefox-87.0/layout/reftests/svg/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/svg/reftest.list
---- firefox-87.0/layout/reftests/svg/reftest.list.firefox-tests-reftest 2021-03-18 14:49:01.000000000 +0100
-+++ firefox-87.0/layout/reftests/svg/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/svg/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/svg/reftest.list
+--- firefox-88.0/layout/reftests/svg/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/svg/reftest.list 2021-04-19 13:52:26.654141907 +0200
@@ -475 +475 @@
-random-if(winWidget) fuzzy-if(Android,0-10,0-2) == text-gradient-02.svg text-gradient-02-ref.svg # see bug 590101
+random-if(winWidget) fuzzy-if(gtkWidget,0-20,0-10) fuzzy-if(Android,0-10,0-2) == text-gradient-02.svg text-gradient-02-ref.svg # see bug 590101
@@ -403,32 +403,32 @@ diff -U0 firefox-87.0/layout/reftests/svg/reftest.list.firefox-tests-reftest fir
@@ -492 +491 @@
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == text-layout-09.svg pass.svg # Bug 1392106
+fuzzy(0-255,0-237) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == text-layout-09.svg pass.svg # Bug 1392106
-diff -U0 firefox-87.0/layout/reftests/svg/smil/style/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/svg/smil/style/reftest.list
---- firefox-87.0/layout/reftests/svg/smil/style/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/svg/smil/style/reftest.list 2021-03-25 18:32:51.617417752 +0100
+diff -U0 firefox-88.0/layout/reftests/svg/smil/style/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/svg/smil/style/reftest.list
+--- firefox-88.0/layout/reftests/svg/smil/style/reftest.list.firefox-tests-reftest 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/layout/reftests/svg/smil/style/reftest.list 2021-04-19 13:52:26.654141907 +0200
@@ -70 +70 @@
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) fuzzy-if(gtkWidget,255-255,1520-1520) == anim-css-font-1.svg anim-css-font-1-ref.svg # Windows: Bug 1392106 Linux: Bug 1599619
+random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == anim-css-font-1.svg anim-css-font-1-ref.svg # Windows: Bug 1392106 Linux: Bug 1599619
-diff -U0 firefox-87.0/layout/reftests/svg/svg-integration/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/svg/svg-integration/reftest.list
---- firefox-87.0/layout/reftests/svg/svg-integration/reftest.list.firefox-tests-reftest 2021-03-18 14:49:01.000000000 +0100
-+++ firefox-87.0/layout/reftests/svg/svg-integration/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/svg/svg-integration/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/svg/svg-integration/reftest.list
+--- firefox-88.0/layout/reftests/svg/svg-integration/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/layout/reftests/svg/svg-integration/reftest.list 2021-04-19 13:52:26.654141907 +0200
@@ -50 +50 @@
-fuzzy-if(Android,0-4,0-10) == box-decoration-break-01.xhtml box-decoration-break-01-ref.xhtml
+fuzzy-if(gtkWidget,0-5,0-11) fuzzy-if(Android,0-4,0-10) == box-decoration-break-01.xhtml box-decoration-break-01-ref.xhtml
@@ -52 +52 @@
-fuzzy(0-67,0-238) == box-decoration-break-03.xhtml box-decoration-break-01-ref.xhtml
+fuzzy(0-67,0-254) == box-decoration-break-03.xhtml box-decoration-break-01-ref.xhtml
-diff -U0 firefox-87.0/layout/reftests/svg/text/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/svg/text/reftest.list
---- firefox-87.0/layout/reftests/svg/text/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/svg/text/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/svg/text/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/svg/text/reftest.list
+--- firefox-88.0/layout/reftests/svg/text/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/layout/reftests/svg/text/reftest.list 2021-04-19 13:52:26.654141907 +0200
@@ -203,2 +203,2 @@
-fuzzy-if(skiaContent,0-1,0-100) needs-focus fuzzy-if(webrender&&winWidget,134-148,261-318) == simple-bidi-selection.svg simple-bidi-selection-ref.html
-fuzzy-if(skiaContent,0-1,0-50) needs-focus fuzzy-if(webrender&&winWidget,127-148,221-254) fuzzy-if(webrender&&OSX,1-65,19-196) == simple-fill-color-selection.svg simple-fill-color-selection-ref.html
+fuzzy-if(skiaContent,0-1,0-120) needs-focus fuzzy-if(webrender&&winWidget,134-148,261-318) == simple-bidi-selection.svg simple-bidi-selection-ref.html
+fuzzy-if(skiaContent,0-1,0-70) needs-focus fuzzy-if(webrender&&winWidget,127-148,221-254) fuzzy-if(webrender&&OSX,1-65,19-196) == simple-fill-color-selection.svg simple-fill-color-selection-ref.html
-diff -U0 firefox-87.0/layout/reftests/tab-size/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/tab-size/reftest.list
---- firefox-87.0/layout/reftests/tab-size/reftest.list.firefox-tests-reftest 2021-03-18 14:49:01.000000000 +0100
-+++ firefox-87.0/layout/reftests/tab-size/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/tab-size/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/tab-size/reftest.list
+--- firefox-88.0/layout/reftests/tab-size/reftest.list.firefox-tests-reftest 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/layout/reftests/tab-size/reftest.list 2021-04-19 13:52:26.654141907 +0200
@@ -2,6 +2,6 @@
-== tab-size-8.html spaces-8.html
-== tab-size-4.html spaces-4.html
@@ -442,49 +442,49 @@ diff -U0 firefox-87.0/layout/reftests/tab-size/reftest.list.firefox-tests-reftes
+fuzzy-if(gtkWidget,0-255,0-371) == tab-size-4-spanoffset.html spaces-4-offset.html
+fuzzy-if(gtkWidget,0-255,0-410) == tab-size-4-multiple.html spaces-4-multiple.html
+fuzzy-if(gtkWidget,0-255,0-63) == tab-size-1.html spaces-1.html
-diff -U0 firefox-87.0/layout/reftests/text-decoration/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/text-decoration/reftest.list
---- firefox-87.0/layout/reftests/text-decoration/reftest.list.firefox-tests-reftest 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/layout/reftests/text-decoration/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/text-decoration/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/text-decoration/reftest.list
+--- firefox-88.0/layout/reftests/text-decoration/reftest.list.firefox-tests-reftest 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/layout/reftests/text-decoration/reftest.list 2021-04-19 13:52:26.654141907 +0200
@@ -1,2 +1,2 @@
-fuzzy-if(webrender&&gtkWidget,0-208,0-12) == complex-decoration-style-quirks.html complex-decoration-style-quirks-ref.html
-fuzzy-if(webrender&&gtkWidget,0-208,0-12) == complex-decoration-style-standards.html complex-decoration-style-standards-ref.html
+fuzzy-if(gtkWidget,0-255,0-40) == complex-decoration-style-quirks.html complex-decoration-style-quirks-ref.html
+fuzzy-if(gtkWidget,0-255,0-40) == complex-decoration-style-standards.html complex-decoration-style-standards-ref.html
-diff -U0 firefox-87.0/layout/reftests/text-overflow/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/text-overflow/reftest.list
---- firefox-87.0/layout/reftests/text-overflow/reftest.list.firefox-tests-reftest 2021-03-18 14:49:01.000000000 +0100
-+++ firefox-87.0/layout/reftests/text-overflow/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/text-overflow/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/text-overflow/reftest.list
+--- firefox-88.0/layout/reftests/text-overflow/reftest.list.firefox-tests-reftest 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/layout/reftests/text-overflow/reftest.list 2021-04-19 13:52:26.654141907 +0200
@@ -6 +6 @@
-skip-if(!gtkWidget) fuzzy-if(gtkWidget,0-124,0-289) == bidi-simple-scrolled.html bidi-simple-scrolled-ref.html # Fails on Windows and OSX due to anti-aliasing
+skip-if(!gtkWidget) fuzzy-if(gtkWidget,0-255,0-400) == bidi-simple-scrolled.html bidi-simple-scrolled-ref.html # Fails on Windows and OSX due to anti-aliasing
@@ -28 +28 @@
-== float-edges-1.html float-edges-1-ref.html
+fuzzy-if(gtkWidget,0-255,0-294) == float-edges-1.html float-edges-1-ref.html
-diff -U0 firefox-87.0/layout/reftests/text/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/text/reftest.list
---- firefox-87.0/layout/reftests/text/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/text/reftest.list 2021-03-25 18:32:51.618417782 +0100
-@@ -192 +192 @@
+diff -U0 firefox-88.0/layout/reftests/text/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/text/reftest.list
+--- firefox-88.0/layout/reftests/text/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/layout/reftests/text/reftest.list 2021-04-19 14:25:55.142648846 +0200
+@@ -190 +190 @@
-fails-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 1320665-cmap-format-13.html 1320665-cmap-format-13-ref.html # see bug 1320665 comments 8-9
+fuzzy-if(gtkWidget,0-255,0-1071) fails-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 1320665-cmap-format-13.html 1320665-cmap-format-13-ref.html # see bug 1320665 comments 8-9
-@@ -195,2 +195,2 @@
+@@ -193,2 +193,2 @@
-fuzzy-if(Android,0-128,0-233) == 1463020-letter-spacing-text-transform-1.html 1463020-letter-spacing-text-transform-1-ref.html
-fails-if(Android) == 1463020-letter-spacing-text-transform-2.html 1463020-letter-spacing-text-transform-2-ref.html # missing font coverage on Android
+fuzzy-if(gtkWidget,0-255,0-800) fails-if(/^^Windows\x20NT\x2010\.0/.test(http.oscpu)) fuzzy-if(Android,0-128,0-233) == 1463020-letter-spacing-text-transform-1.html 1463020-letter-spacing-text-transform-1-ref.html
+fuzzy-if(gtkWidget,0-255,0-1600) fails-if(Android) == 1463020-letter-spacing-text-transform-2.html 1463020-letter-spacing-text-transform-2-ref.html # missing font coverage on Android
-@@ -200 +200 @@
--fuzzy-if(!webrender,0-42,0-1553) fuzzy-if(gtkWidget&&!webrender,0-255,0-50) == 1655364-1.html 1655364-1-ref.html
+@@ -198 +198 @@
+-fuzzy-if(!webrender,0-42,0-1590) fuzzy-if(gtkWidget&&!webrender,0-255,0-50) == 1655364-1.html 1655364-1-ref.html
+fuzzy-if(!webrender,0-42,0-1553) fuzzy-if(gtkWidget,0-255,0-1625) == 1655364-1.html 1655364-1-ref.html
-@@ -368 +368 @@
+@@ -366 +366 @@
-== color-opacity-rtl-1.html color-opacity-rtl-1-ref.html
+fuzzy-if(gtkWidget,0-5,0-5) == color-opacity-rtl-1.html color-opacity-rtl-1-ref.html
-diff -U0 firefox-87.0/layout/reftests/text-transform/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/text-transform/reftest.list
---- firefox-87.0/layout/reftests/text-transform/reftest.list.firefox-tests-reftest 2021-03-18 14:48:53.000000000 +0100
-+++ firefox-87.0/layout/reftests/text-transform/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/text-transform/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/text-transform/reftest.list
+--- firefox-88.0/layout/reftests/text-transform/reftest.list.firefox-tests-reftest 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/layout/reftests/text-transform/reftest.list 2021-04-19 13:52:26.655141937 +0200
@@ -15 +15 @@
-random-if(winWidget) == small-caps-1.html small-caps-1-ref.html # fails if default font supports 'smcp'
+fuzzy-if(gtkWidget,0-255,0-571) random-if(winWidget) == small-caps-1.html small-caps-1-ref.html # fails if default font supports 'smcp'
-diff -U0 firefox-87.0/layout/reftests/transform-3d/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/transform-3d/reftest.list
---- firefox-87.0/layout/reftests/transform-3d/reftest.list.firefox-tests-reftest 2021-03-18 14:49:01.000000000 +0100
-+++ firefox-87.0/layout/reftests/transform-3d/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/transform-3d/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/transform-3d/reftest.list
+--- firefox-88.0/layout/reftests/transform-3d/reftest.list.firefox-tests-reftest 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/layout/reftests/transform-3d/reftest.list 2021-04-19 13:52:26.655141937 +0200
@@ -14 +14 @@
-fuzzy-if(gtkWidget||winWidget,0-8,0-376) fuzzy-if(Android,0-8,0-441) fuzzy-if(cocoaWidget,0-17,0-4) fuzzy-if(skiaContent,0-16,0-286) fuzzy-if(webrender&&cocoaWidget,0-200,0-310) fuzzy-if(webrender&&winWidget,0-175,0-250) == preserve3d-1a.html preserve3d-1-ref.html
+fuzzy-if(gtkWidget,0-16,0-500) == preserve3d-1a.html preserve3d-1-ref.html
@@ -501,9 +501,9 @@ diff -U0 firefox-87.0/layout/reftests/transform-3d/reftest.list.firefox-tests-re
@@ -102 +102 @@
-fuzzy-if(webrender,0-6,0-3117) == 1637067-1.html 1637067-1-ref.html
+fuzzy-if(webrender,0-6,0-3500) == 1637067-1.html 1637067-1-ref.html
-diff -U0 firefox-87.0/layout/reftests/writing-mode/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/writing-mode/reftest.list
---- firefox-87.0/layout/reftests/writing-mode/reftest.list.firefox-tests-reftest 2021-03-18 14:49:01.000000000 +0100
-+++ firefox-87.0/layout/reftests/writing-mode/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/writing-mode/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/writing-mode/reftest.list
+--- firefox-88.0/layout/reftests/writing-mode/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/layout/reftests/writing-mode/reftest.list 2021-04-19 14:26:35.296858677 +0200
@@ -20 +20 @@
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 1091058-1.html 1091058-1-ref.html # Bug 1392106
+fuzzy(0-255,0-315) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 1091058-1.html 1091058-1-ref.html # Bug 1392106
@@ -514,14 +514,14 @@ diff -U0 firefox-87.0/layout/reftests/writing-mode/reftest.list.firefox-tests-re
-fails-if(geckoview) == 1135361-ruby-justify-1.html 1135361-ruby-justify-1-ref.html # Bug 1558513 for GV
+fuzzy-if(gtkWidget,0-255,0-2323) fails-if(geckoview) == 1135361-ruby-justify-1.html 1135361-ruby-justify-1-ref.html # Bug 1558513 for GV
@@ -154 +154 @@
--fuzzy-if(winWidget,0-3,0-84) fails-if(webrender&&winWidget&&!swgl) == 1193519-sideways-lr-3.html 1193519-sideways-lr-3-ref.html
+-fuzzy-if(winWidget,0-3,0-84) == 1193519-sideways-lr-3.html 1193519-sideways-lr-3-ref.html
+fuzzy(0-255,0-610) fuzzy-if(winWidget,0-3,0-84) fails-if(webrender&&winWidget&&!swgl) == 1193519-sideways-lr-3.html 1193519-sideways-lr-3-ref.html
@@ -185 +185 @@
-== 1395926-vertical-upright-gpos-1.html 1395926-vertical-upright-gpos-1-ref.html
+fuzzy-if(gtkWidget,0-248,0-8) == 1395926-vertical-upright-gpos-1.html 1395926-vertical-upright-gpos-1-ref.html
-diff -U0 firefox-87.0/layout/reftests/writing-mode/tables/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/writing-mode/tables/reftest.list
---- firefox-87.0/layout/reftests/writing-mode/tables/reftest.list.firefox-tests-reftest 2021-03-18 14:48:54.000000000 +0100
-+++ firefox-87.0/layout/reftests/writing-mode/tables/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/writing-mode/tables/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/writing-mode/tables/reftest.list
+--- firefox-88.0/layout/reftests/writing-mode/tables/reftest.list.firefox-tests-reftest 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/layout/reftests/writing-mode/tables/reftest.list 2021-04-19 13:52:26.655141937 +0200
@@ -34 +34 @@
-== fixed-table-layout-027-vlr.html fixed-table-layout-025-ref.html
+fuzzy-if(gtkWidget,0-260,0-250) == fixed-table-layout-027-vlr.html fixed-table-layout-025-ref.html
@@ -531,15 +531,15 @@ diff -U0 firefox-87.0/layout/reftests/writing-mode/tables/reftest.list.firefox-t
@@ -77,2 +76,0 @@
-fuzzy-if(Android,0-255,0-38) == table-caption-top-1.html table-caption-top-1-ref.html
-fuzzy-if(Android,0-255,0-38) pref(layout.css.caption-side-non-standard.enabled,true) == table-caption-bottom-1.html table-caption-bottom-1-ref.html
-diff -U0 firefox-87.0/layout/reftests/xul/reftest.list.firefox-tests-reftest firefox-87.0/layout/reftests/xul/reftest.list
---- firefox-87.0/layout/reftests/xul/reftest.list.firefox-tests-reftest 2021-03-18 14:48:54.000000000 +0100
-+++ firefox-87.0/layout/reftests/xul/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/reftests/xul/reftest.list.firefox-tests-reftest firefox-88.0/layout/reftests/xul/reftest.list
+--- firefox-88.0/layout/reftests/xul/reftest.list.firefox-tests-reftest 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/layout/reftests/xul/reftest.list 2021-04-19 13:52:26.655141937 +0200
@@ -15 +15 @@
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == chrome://reftest/content/xul/text-small-caps-1.xhtml chrome://reftest/content/xul/text-small-caps-1-ref.xhtml
+fuzzy-if(gtkWidget,0-255,0-5159) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == chrome://reftest/content/xul/text-small-caps-1.xhtml chrome://reftest/content/xul/text-small-caps-1-ref.xhtml
-diff -U0 firefox-87.0/layout/xul/reftest/reftest.list.firefox-tests-reftest firefox-87.0/layout/xul/reftest/reftest.list
---- firefox-87.0/layout/xul/reftest/reftest.list.firefox-tests-reftest 2021-03-18 14:48:54.000000000 +0100
-+++ firefox-87.0/layout/xul/reftest/reftest.list 2021-03-25 18:32:51.618417782 +0100
+diff -U0 firefox-88.0/layout/xul/reftest/reftest.list.firefox-tests-reftest firefox-88.0/layout/xul/reftest/reftest.list
+--- firefox-88.0/layout/xul/reftest/reftest.list.firefox-tests-reftest 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/layout/xul/reftest/reftest.list 2021-04-19 13:52:26.655141937 +0200
@@ -14 +14 @@
-fuzzy(0-10,0-75) == chrome://reftest/content/xul/reftest/scrollbar-marks-overlay.html chrome://reftest/content/xul/reftest/scrollbar-marks-overlay-ref.html
+fuzzy(0-10,0-90) == chrome://reftest/content/xul/reftest/scrollbar-marks-overlay.html chrome://reftest/content/xul/reftest/scrollbar-marks-overlay-ref.html
diff --git a/firefox-tests-xpcshell.patch b/firefox-tests-xpcshell.patch
index 850cef6..035675f 100644
--- a/firefox-tests-xpcshell.patch
+++ b/firefox-tests-xpcshell.patch
@@ -1,34 +1,40 @@
-diff -U0 firefox-87.0/browser/components/enterprisepolicies/tests/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-87.0/browser/components/enterprisepolicies/tests/xpcshell/xpcshell.ini
---- firefox-87.0/browser/components/enterprisepolicies/tests/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-03-18 14:48:28.000000000 +0100
-+++ firefox-87.0/browser/components/enterprisepolicies/tests/xpcshell/xpcshell.ini 2021-03-24 14:36:18.229122548 +0100
+diff -U0 firefox-88.0/browser/components/enterprisepolicies/tests/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/browser/components/enterprisepolicies/tests/xpcshell/xpcshell.ini
+--- firefox-88.0/browser/components/enterprisepolicies/tests/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-04-15 21:44:26.000000000 +0200
++++ firefox-88.0/browser/components/enterprisepolicies/tests/xpcshell/xpcshell.ini 2021-04-19 13:48:43.194411557 +0200
@@ -9 +8,0 @@
-[test_appupdateurl.js]
@@ -27 +25,0 @@
-[test_sorted_alphabetically.js]
-diff -U0 firefox-87.0/devtools/client/shared/remote-debugging/adb/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-87.0/devtools/client/shared/remote-debugging/adb/xpcshell/xpcshell.ini
---- firefox-87.0/devtools/client/shared/remote-debugging/adb/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-03-18 14:48:29.000000000 +0100
-+++ firefox-87.0/devtools/client/shared/remote-debugging/adb/xpcshell/xpcshell.ini 2021-03-24 14:36:18.230122524 +0100
+diff -U0 firefox-88.0/browser/extensions/formautofill/test/unit/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/browser/extensions/formautofill/test/unit/xpcshell.ini
+--- firefox-88.0/browser/extensions/formautofill/test/unit/xpcshell.ini.firefox-tests-xpcshell 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/browser/extensions/formautofill/test/unit/xpcshell.ini 2021-04-19 13:48:57.654847093 +0200
+@@ -80,2 +79,0 @@
+-skip-if = tsan # Times out, bug 1612707
+-[test_sync.js]
+diff -U0 firefox-88.0/devtools/client/shared/remote-debugging/adb/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/devtools/client/shared/remote-debugging/adb/xpcshell/xpcshell.ini
+--- firefox-88.0/devtools/client/shared/remote-debugging/adb/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-04-15 21:44:27.000000000 +0200
++++ firefox-88.0/devtools/client/shared/remote-debugging/adb/xpcshell/xpcshell.ini 2021-04-19 13:48:43.194411557 +0200
@@ -9 +8,0 @@
-[test_adb.js]
-diff -U0 firefox-87.0/netwerk/test/unit_ipc/xpcshell.ini.firefox-tests-xpcshell firefox-87.0/netwerk/test/unit_ipc/xpcshell.ini
---- firefox-87.0/netwerk/test/unit_ipc/xpcshell.ini.firefox-tests-xpcshell 2021-03-18 14:49:05.000000000 +0100
-+++ firefox-87.0/netwerk/test/unit_ipc/xpcshell.ini 2021-03-24 14:36:18.230122524 +0100
-@@ -73 +72,0 @@
+diff -U0 firefox-88.0/netwerk/test/unit_ipc/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/netwerk/test/unit_ipc/xpcshell.ini
+--- firefox-88.0/netwerk/test/unit_ipc/xpcshell.ini.firefox-tests-xpcshell 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/netwerk/test/unit_ipc/xpcshell.ini 2021-04-19 13:48:43.194411557 +0200
+@@ -74 +73,0 @@
-[test_dns_service_wrap.js]
-@@ -112 +110,0 @@
+@@ -115 +113,0 @@
-[test_trr_httpssvc_wrap.js]
-diff -U0 firefox-87.0/netwerk/test/unit/xpcshell.ini.firefox-tests-xpcshell firefox-87.0/netwerk/test/unit/xpcshell.ini
---- firefox-87.0/netwerk/test/unit/xpcshell.ini.firefox-tests-xpcshell 2021-03-18 14:49:00.000000000 +0100
-+++ firefox-87.0/netwerk/test/unit/xpcshell.ini 2021-03-24 14:36:18.230122524 +0100
+diff -U0 firefox-88.0/netwerk/test/unit/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/netwerk/test/unit/xpcshell.ini
+--- firefox-88.0/netwerk/test/unit/xpcshell.ini.firefox-tests-xpcshell 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/netwerk/test/unit/xpcshell.ini 2021-04-19 13:48:43.194411557 +0200
@@ -204 +203,0 @@
-[test_dns_service.js]
@@ -228 +226,0 @@
-[test_file_protocol.js]
-@@ -336 +333,0 @@
+@@ -338 +335,0 @@
-[test_unix_domain.js]
-@@ -348 +344,0 @@
+@@ -350 +346,0 @@
-[test_udp_multicast.js]
-@@ -397,2 +392,0 @@
+@@ -399,2 +394,0 @@
-[test_tls_flags.js]
-skip-if = (verify && (os == 'linux')) || (os == "android" && processor == "x86_64")
@@ -414 +407,0 @@
@@ -37,9 +43,9 @@ diff -U0 firefox-87.0/netwerk/test/unit/xpcshell.ini.firefox-tests-xpcshell fire
-[test_httpssvc_retry_with_ech.js]
@@ -519 +510,0 @@
-[test_odoh.js]
-diff -U0 firefox-87.0/security/manager/ssl/tests/unit/xpcshell.ini.firefox-tests-xpcshell firefox-87.0/security/manager/ssl/tests/unit/xpcshell.ini
---- firefox-87.0/security/manager/ssl/tests/unit/xpcshell.ini.firefox-tests-xpcshell 2021-03-18 14:49:06.000000000 +0100
-+++ firefox-87.0/security/manager/ssl/tests/unit/xpcshell.ini 2021-03-24 17:36:29.341663052 +0100
+diff -U0 firefox-88.0/security/manager/ssl/tests/unit/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/security/manager/ssl/tests/unit/xpcshell.ini
+--- firefox-88.0/security/manager/ssl/tests/unit/xpcshell.ini.firefox-tests-xpcshell 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/security/manager/ssl/tests/unit/xpcshell.ini 2021-04-19 13:48:43.194411557 +0200
@@ -117,4 +116,0 @@
-[test_encrypted_client_hello.js]
-run-sequentially = hardcoded ports
@@ -47,87 +53,60 @@ diff -U0 firefox-87.0/security/manager/ssl/tests/unit/xpcshell.ini.firefox-tests
-run-sequentially = hardcoded ports
@@ -182 +177,0 @@
-[test_oskeystore.js]
-diff -U0 firefox-87.0/security/manager/ssl/tests/unit/xpcshell-smartcards.ini.firefox-tests-xpcshell firefox-87.0/security/manager/ssl/tests/unit/xpcshell-smartcards.ini
---- firefox-87.0/security/manager/ssl/tests/unit/xpcshell-smartcards.ini.firefox-tests-xpcshell 2021-03-18 14:49:06.000000000 +0100
-+++ firefox-87.0/security/manager/ssl/tests/unit/xpcshell-smartcards.ini 2021-03-24 14:36:18.230122524 +0100
+diff -U0 firefox-88.0/security/manager/ssl/tests/unit/xpcshell-smartcards.ini.firefox-tests-xpcshell firefox-88.0/security/manager/ssl/tests/unit/xpcshell-smartcards.ini
+--- firefox-88.0/security/manager/ssl/tests/unit/xpcshell-smartcards.ini.firefox-tests-xpcshell 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/security/manager/ssl/tests/unit/xpcshell-smartcards.ini 2021-04-19 13:48:43.194411557 +0200
@@ -10 +9,0 @@
-[test_pkcs11_module.js]
-diff -U0 firefox-87.0/toolkit/components/commandlines/test/unit/xpcshell.ini.firefox-tests-xpcshell firefox-87.0/toolkit/components/commandlines/test/unit/xpcshell.ini
---- firefox-87.0/toolkit/components/commandlines/test/unit/xpcshell.ini.firefox-tests-xpcshell 2021-03-18 14:51:57.000000000 +0100
-+++ firefox-87.0/toolkit/components/commandlines/test/unit/xpcshell.ini 2021-03-24 14:36:18.230122524 +0100
-@@ -10 +9,0 @@
--[test_resolvefile.js]
-diff -U0 firefox-87.0/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini.firefox-tests-xpcshell firefox-87.0/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini
---- firefox-87.0/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini.firefox-tests-xpcshell 2021-03-18 14:51:46.000000000 +0100
-+++ firefox-87.0/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini 2021-03-24 14:36:18.230122524 +0100
-@@ -79,2 +78,0 @@
--[test_ext_downloads_misc.js]
--skip-if = os == "android" || (os=='linux' && bits==32) || tsan # linux32: bug 1324870, tsan: bug 1612707
-@@ -250,2 +247,0 @@
--[test_proxy_listener.js]
--skip-if = appname == "thunderbird"
-diff -U0 firefox-87.0/toolkit/modules/subprocess/test/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-87.0/toolkit/modules/subprocess/test/xpcshell/xpcshell.ini
---- firefox-87.0/toolkit/modules/subprocess/test/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-03-18 14:51:47.000000000 +0100
-+++ firefox-87.0/toolkit/modules/subprocess/test/xpcshell/xpcshell.ini 2021-03-24 14:36:18.230122524 +0100
-@@ -10 +9,0 @@
--[test_subprocess.js]
-diff -U0 firefox-87.0/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-87.0/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini
---- firefox-87.0/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-03-18 14:51:57.000000000 +0100
-+++ firefox-87.0/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini 2021-03-24 17:45:37.009398081 +0100
-@@ -97 +96,0 @@
--[test_sideloads_after_rebuild.js]
-@@ -112 +110,0 @@
--[test_startup_scan.js]
-@@ -192,2 +189,0 @@
--tags = webextensions
--[test_webextension_theme.js]
-diff -U0 firefox-87.0/toolkit/components/antitracking/test/xpcshell/xpcshell.ini.reff firefox-87.0/toolkit/components/antitracking/test/xpcshell/xpcshell.ini
---- firefox-87.0/toolkit/components/antitracking/test/xpcshell/xpcshell.ini.reff 2021-03-24 17:42:05.187528580 +0100
-+++ firefox-87.0/toolkit/components/antitracking/test/xpcshell/xpcshell.ini 2021-03-24 17:42:17.363233673 +0100
+diff -U0 firefox-88.0/toolkit/components/antitracking/test/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/toolkit/components/antitracking/test/xpcshell/xpcshell.ini
+--- firefox-88.0/toolkit/components/antitracking/test/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/toolkit/components/antitracking/test/xpcshell/xpcshell.ini 2021-04-19 13:48:57.654847093 +0200
@@ -9,2 +8,0 @@
-skip-if = toolkit == 'android' # Bug 1567341
-[test_staticPartition_font.js]
-diff -U0 firefox-87.0/toolkit/components/search/tests/xpcshell/xpcshell.ini.reff firefox-87.0/toolkit/components/search/tests/xpcshell/xpcshell.ini
---- firefox-87.0/toolkit/components/search/tests/xpcshell/xpcshell.ini.reff 2021-03-24 17:42:51.995394849 +0100
-+++ firefox-87.0/toolkit/components/search/tests/xpcshell/xpcshell.ini 2021-03-24 17:44:16.362351417 +0100
-@@ -128 +127,0 @@
--[test_reload_engines.js]
-@@ -135 +133,0 @@
--[test_searchSuggest.js]
-@@ -146,2 +143,0 @@
--[test_settings.js]
--[test_sort_orders-no-hints.js]
-diff -U0 firefox-87.0/toolkit/mozapps/downloads/tests/unit/xpcshell.ini.reff firefox-87.0/toolkit/mozapps/downloads/tests/unit/xpcshell.ini
---- firefox-87.0/toolkit/mozapps/downloads/tests/unit/xpcshell.ini.reff 2021-03-24 17:44:37.274844899 +0100
-+++ firefox-87.0/toolkit/mozapps/downloads/tests/unit/xpcshell.ini 2021-03-24 17:44:42.850709848 +0100
-@@ -4 +3,0 @@
--[test_DownloadUtils.js]
-diff -U0 firefox-87.0/toolkit/profile/xpcshell/xpcshell.ini.reff firefox-87.0/toolkit/profile/xpcshell/xpcshell.ini
---- firefox-87.0/toolkit/profile/xpcshell/xpcshell.ini.reff 2021-03-24 17:46:06.873674746 +0100
-+++ firefox-87.0/toolkit/profile/xpcshell/xpcshell.ini 2021-03-24 17:46:48.489652405 +0100
-@@ -32,3 +31,0 @@
--[test_snatch_environment.js]
--[test_skip_locked_environment.js]
--[test_snatch_environment_default.js]
-diff -U0 firefox-87.0/browser/extensions/formautofill/test/unit/xpcshell.ini.reff firefox-87.0/browser/extensions/formautofill/test/unit/xpcshell.ini
---- firefox-87.0/browser/extensions/formautofill/test/unit/xpcshell.ini.reff 2021-03-24 19:28:00.670593333 +0100
-+++ firefox-87.0/browser/extensions/formautofill/test/unit/xpcshell.ini 2021-03-24 19:28:10.212361150 +0100
-@@ -80,2 +79,0 @@
--skip-if = tsan # Times out, bug 1612707
--[test_sync.js]
-diff -U0 firefox-87.0/toolkit/components/corroborator/test/xpcshell/test_verify_jar.js.reff firefox-87.0/toolkit/components/corroborator/test/xpcshell/test_verify_jar.js
---- firefox-87.0/toolkit/components/corroborator/test/xpcshell/test_verify_jar.js.reff 2021-03-25 17:08:42.019555874 +0100
-+++ firefox-87.0/toolkit/components/corroborator/test/xpcshell/test_verify_jar.js 2021-03-25 17:09:36.819205526 +0100
+diff -U0 firefox-88.0/toolkit/components/commandlines/test/unit/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/toolkit/components/commandlines/test/unit/xpcshell.ini
+--- firefox-88.0/toolkit/components/commandlines/test/unit/xpcshell.ini.firefox-tests-xpcshell 2021-04-15 21:44:37.000000000 +0200
++++ firefox-88.0/toolkit/components/commandlines/test/unit/xpcshell.ini 2021-04-19 13:48:43.194411557 +0200
+@@ -10 +9,0 @@
+-[test_resolvefile.js]
+diff -U0 firefox-88.0/toolkit/components/corroborator/test/xpcshell/test_verify_jar.js.firefox-tests-xpcshell firefox-88.0/toolkit/components/corroborator/test/xpcshell/test_verify_jar.js
+--- firefox-88.0/toolkit/components/corroborator/test/xpcshell/test_verify_jar.js.firefox-tests-xpcshell 2021-04-15 21:44:37.000000000 +0200
++++ firefox-88.0/toolkit/components/corroborator/test/xpcshell/test_verify_jar.js 2021-04-19 13:48:57.654847093 +0200
@@ -30,5 +29,0 @@
-
- result = await Corroborate.verifyJar(
- do_get_file("data/signed-components.xpi")
- );
- equal(result, true, "Components signed files do verify");
-diff -U0 firefox-87.0/toolkit/components/telemetry/tests/unit/test_TelemetrySession.js.reff firefox-87.0/toolkit/components/telemetry/tests/unit/test_TelemetrySession.js
---- firefox-87.0/toolkit/components/telemetry/tests/unit/test_TelemetrySession.js.reff 2021-03-25 17:13:51.849880604 +0100
-+++ firefox-87.0/toolkit/components/telemetry/tests/unit/test_TelemetrySession.js 2021-03-25 17:14:11.785480406 +0100
-@@ -603,20 +602,0 @@
+diff -U0 firefox-88.0/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini.firefox-tests-xpcshell firefox-88.0/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini
+--- firefox-88.0/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini.firefox-tests-xpcshell 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini 2021-04-19 13:50:23.462431517 +0200
+@@ -78,8 +77,0 @@
+-skip-if = appname == "thunderbird" || os == "android" || tsan # tsan: bug 1612707
+-[test_ext_downloads_misc.js]
+-skip-if =
+- os == "android"
+- os == 'linux' && bits == 32 # bug 1324870
+- tsan # bug 1612707
+- os == "win" && bits == 32 # bug 1559476
+-[test_ext_downloads_private.js]
+@@ -254,2 +245,0 @@
+-[test_proxy_listener.js]
+-skip-if = appname == "thunderbird"
+diff -U0 firefox-88.0/toolkit/components/search/tests/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/toolkit/components/search/tests/xpcshell/xpcshell.ini
+--- firefox-88.0/toolkit/components/search/tests/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-04-15 21:44:37.000000000 +0200
++++ firefox-88.0/toolkit/components/search/tests/xpcshell/xpcshell.ini 2021-04-19 13:48:57.654847093 +0200
+@@ -125 +124,0 @@
+-[test_reload_engines.js]
+@@ -132 +130,0 @@
+-[test_searchSuggest.js]
+@@ -143,2 +140,0 @@
+-[test_settings.js]
+-[test_sort_orders-no-hints.js]
+diff -U0 firefox-88.0/toolkit/components/telemetry/tests/unit/test_TelemetrySession.js.firefox-tests-xpcshell firefox-88.0/toolkit/components/telemetry/tests/unit/test_TelemetrySession.js
+--- firefox-88.0/toolkit/components/telemetry/tests/unit/test_TelemetrySession.js.firefox-tests-xpcshell 2021-04-15 21:44:37.000000000 +0200
++++ firefox-88.0/toolkit/components/telemetry/tests/unit/test_TelemetrySession.js 2021-04-19 13:48:57.655847123 +0200
+@@ -598,20 +597,0 @@
- Assert.ok(
- withSuspend - withoutSuspend <= max_delta_ms,
- "In test condition, the two uptimes should be close to each other"
@@ -148,9 +127,36 @@ diff -U0 firefox-87.0/toolkit/components/telemetry/tests/unit/test_TelemetrySess
- );
- }
-
-diff -U0 firefox-87.0/uriloader/exthandler/tests/unit/test_handlerService.js.reff firefox-87.0/uriloader/exthandler/tests/unit/test_handlerService.js
---- firefox-87.0/uriloader/exthandler/tests/unit/test_handlerService.js.reff 2021-03-25 17:10:15.899381967 +0100
-+++ firefox-87.0/uriloader/exthandler/tests/unit/test_handlerService.js 2021-03-25 17:11:36.745815723 +0100
+diff -U0 firefox-88.0/toolkit/modules/subprocess/test/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/toolkit/modules/subprocess/test/xpcshell/xpcshell.ini
+--- firefox-88.0/toolkit/modules/subprocess/test/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-04-15 21:44:37.000000000 +0200
++++ firefox-88.0/toolkit/modules/subprocess/test/xpcshell/xpcshell.ini 2021-04-19 13:48:57.654847093 +0200
+@@ -10 +9,0 @@
+-[test_subprocess.js]
+diff -U0 firefox-88.0/toolkit/mozapps/downloads/tests/unit/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/toolkit/mozapps/downloads/tests/unit/xpcshell.ini
+--- firefox-88.0/toolkit/mozapps/downloads/tests/unit/xpcshell.ini.firefox-tests-xpcshell 2021-04-15 21:44:37.000000000 +0200
++++ firefox-88.0/toolkit/mozapps/downloads/tests/unit/xpcshell.ini 2021-04-19 13:48:57.654847093 +0200
+@@ -4 +3,0 @@
+-[test_DownloadUtils.js]
+diff -U0 firefox-88.0/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini
+--- firefox-88.0/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini 2021-04-19 13:48:57.654847093 +0200
+@@ -97 +96,0 @@
+-[test_sideloads_after_rebuild.js]
+@@ -112 +110,0 @@
+-[test_startup_scan.js]
+@@ -192,2 +189,0 @@
+-tags = webextensions
+-[test_webextension_theme.js]
+diff -U0 firefox-88.0/toolkit/profile/xpcshell/xpcshell.ini.firefox-tests-xpcshell firefox-88.0/toolkit/profile/xpcshell/xpcshell.ini
+--- firefox-88.0/toolkit/profile/xpcshell/xpcshell.ini.firefox-tests-xpcshell 2021-04-15 21:44:37.000000000 +0200
++++ firefox-88.0/toolkit/profile/xpcshell/xpcshell.ini 2021-04-19 13:48:57.654847093 +0200
+@@ -32,3 +31,0 @@
+-[test_snatch_environment.js]
+-[test_skip_locked_environment.js]
+-[test_snatch_environment_default.js]
+diff -U0 firefox-88.0/uriloader/exthandler/tests/unit/test_handlerService.js.firefox-tests-xpcshell firefox-88.0/uriloader/exthandler/tests/unit/test_handlerService.js
+--- firefox-88.0/uriloader/exthandler/tests/unit/test_handlerService.js.firefox-tests-xpcshell 2021-04-16 01:11:48.000000000 +0200
++++ firefox-88.0/uriloader/exthandler/tests/unit/test_handlerService.js 2021-04-19 13:48:57.655847123 +0200
@@ -145 +145 @@
- Assert.ok(!protoInfo.alwaysAskBeforeHandling);
+ //Assert.ok(!protoInfo.alwaysAskBeforeHandling);
diff --git a/firefox.spec b/firefox.spec
index 416a020..6fb0ba4 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -153,13 +153,13 @@ ExcludeArch: armv7hl
Summary: Mozilla Firefox Web browser
Name: firefox
-Version: 87.0
-Release: 12%{?pre_tag}%{?dist}
+Version: 88.0
+Release: 1%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz
%if %{with langpacks}
-Source1: firefox-langpacks-%{version}%{?pre_version}-20210322.tar.xz
+Source1: firefox-langpacks-%{version}%{?pre_version}-20210419.tar.xz
%endif
Source2: cbindgen-vendor.tar.xz
Source10: firefox-mozconfig
@@ -207,10 +207,8 @@ Patch53: firefox-gcc-build.patch
# This should be fixed in Firefox 83
Patch54: mozilla-1669639.patch
Patch55: firefox-testing.patch
-Patch56: mozilla-1686888.patch
Patch57: firefox-disable-ffvpx-with-vapi.patch
Patch58: firefox-crashreporter-build.patch
-Patch59: mozilla-1700520.patch
# Test patches
# Generate without context by
@@ -228,7 +226,6 @@ Patch224: mozilla-1170092.patch
Patch226: rhbz-1354671.patch
Patch228: disable-openh264-download.patch
Patch229: firefox-nss-addon-hack.patch
-Patch230: firefox-kde-webrender.patch
# Upstream patches
Patch402: mozilla-1196777.patch
@@ -238,7 +235,6 @@ Patch415: mozilla-1670333.patch
Patch416: mozilla-1693472.patch
Patch417: mozilla-1702606.patch
Patch418: mozilla-1703657.patch
-Patch419: mozilla-1701089.patch
# PGO/LTO patches
Patch600: pgo.patch
@@ -464,10 +460,8 @@ This package contains results of tests executed during build.
%patch53 -p1 -b .firefox-gcc-build
%patch54 -p1 -b .1669639
%patch55 -p1 -b .testing
-%patch56 -p1 -b .1686888-dump-syms
%patch57 -p1 -b .ffvpx-with-vapi
%patch58 -p1 -b .firefox-crashreporter-build
-%patch59 -p1 -b .1700520
# Test patches
%patch100 -p1 -b .firefox-tests-xpcshell
@@ -484,7 +478,6 @@ This package contains results of tests executed during build.
%endif
%patch228 -p1 -b .disable-openh264-download
%patch229 -p1 -b .firefox-nss-addon-hack
-%patch230 -p1 -b .firefox-kde-webrender
%patch402 -p1 -b .1196777
%patch407 -p1 -b .1667096
@@ -493,7 +486,6 @@ This package contains results of tests executed during build.
%patch416 -p1 -b .1693472
%patch417 -p1 -b .1702606
%patch418 -p1 -b .1703657
-%patch419 -p1 -b .1701089
# PGO patches
%if %{build_with_pgo}
@@ -1057,6 +1049,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Mon Apr 19 2021 Martin Stransky <stransky@redhat.com> - 88.0-1
+- Update to 88.0
+
* Mon Apr 12 2021 Martin Stransky <stransky@redhat.com> - 87.0-12
- Added fix for mozbz#1701089 (Widevine playback issues).
diff --git a/mozilla-1645671.patch b/mozilla-1645671.patch
deleted file mode 100644
index 0943469..0000000
--- a/mozilla-1645671.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-changeset: 544864:a8603f131703
-tag: tip
-parent: 544861:161920b70ae4
-user: Martin Stransky <stransky@redhat.com>
-date: Fri Jul 31 13:39:48 2020 +0200
-files: dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h
-description:
-Bug 1645671 [Linux/VA-API] Create DMABufSurfaceWrapper directly at nsTAttay and disable DMABufSurfaceWrapper class copy and assignment constructors, r?jya
-
-When DMABufSurfaceWrapper is added to nsTArray, a temporary local DMABufSurfaceWrapper object is created. When the temporary
-object is deleted after the adding, associated dmabuf data is released which leads to rendering artifact during VA-API video playback.
-
-As a fix in this patch we create DMABufSurfaceWrapper 'in-place' at nsTAttay.
-We also disable DMABufSurfaceWrapper class copy and assignment constructors to avoid similar potential issues.
-
-Differential Revision: https://phabricator.services.mozilla.com/D85152
-
-
-diff --git a/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp b/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp
---- a/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp
-+++ b/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp
-@@ -777,17 +777,17 @@ MediaResult FFmpegVideoDecoder<LIBAV_VER
- RESULT_DETAIL("Unable to get DMABufSurfaceYUV"));
- }
-
- # ifdef MOZ_LOGGING
- static int uid = 0;
- surface->SetUID(++uid);
- FFMPEG_LOG("Created new DMABufSurface UID = %d", uid);
- # endif
-- mDMABufSurfaces.AppendElement(DMABufSurfaceWrapper(surface, mLib));
-+ mDMABufSurfaces.EmplaceBack(surface, mLib);
- surfaceWrapper = &(mDMABufSurfaces[mDMABufSurfaces.Length() - 1]);
- } else {
- surface = surfaceWrapper->GetDMABufSurface();
- bool ret;
-
- if (mVAAPIDeviceContext) {
- ret = surface->UpdateYUVData(vaDesc);
- } else {
-diff --git a/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h b/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h
---- a/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h
-+++ b/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.h
-@@ -70,16 +70,22 @@ class DMABufSurfaceWrapper final {
- // Check if DMABufSurface is used by any gecko rendering process
- // (WebRender or GL compositor) or by DMABUFSurfaceImage/VideoData.
- bool IsUsed() const { return mSurface->IsGlobalRefSet(); }
-
- RefPtr<DMABufSurfaceYUV> GetDMABufSurface() const {
- return mSurface->GetAsDMABufSurfaceYUV();
- }
-
-+ // Don't allow DMABufSurfaceWrapper plain copy as it leads to
-+ // enexpected DMABufSurface/HW buffer releases and we don't want to
-+ // deep copy them.
-+ DMABufSurfaceWrapper(const DMABufSurfaceWrapper&) = delete;
-+ const DMABufSurfaceWrapper& operator=(DMABufSurfaceWrapper const&) = delete;
-+
- private:
- const RefPtr<DMABufSurface> mSurface;
- const FFmpegLibWrapper* mLib;
- AVBufferRef* mAVHWFramesContext;
- AVBufferRef* mHWAVBuffer;
- };
- #endif
-
-
diff --git a/mozilla-1667096.patch b/mozilla-1667096.patch
index 981ced4..ff340fc 100644
--- a/mozilla-1667096.patch
+++ b/mozilla-1667096.patch
@@ -1,6 +1,6 @@
-diff -up firefox-85.0/media/ffvpx/libavcodec/codec_list.c.1667096 firefox-85.0/media/ffvpx/libavcodec/codec_list.c
---- firefox-85.0/media/ffvpx/libavcodec/codec_list.c.1667096 2021-01-18 19:29:51.000000000 +0100
-+++ firefox-85.0/media/ffvpx/libavcodec/codec_list.c 2021-01-21 09:56:17.637831802 +0100
+diff -up firefox-88.0/media/ffvpx/libavcodec/codec_list.c.1667096 firefox-88.0/media/ffvpx/libavcodec/codec_list.c
+--- firefox-88.0/media/ffvpx/libavcodec/codec_list.c.1667096 2021-04-15 21:44:31.000000000 +0200
++++ firefox-88.0/media/ffvpx/libavcodec/codec_list.c 2021-04-19 13:34:10.373138674 +0200
@@ -11,4 +11,8 @@ static const AVCodec * const codec_list[
#if CONFIG_MP3_DECODER
&ff_mp3_decoder,
@@ -10,9 +10,9 @@ diff -up firefox-85.0/media/ffvpx/libavcodec/codec_list.c.1667096 firefox-85.0/m
+#endif
+
NULL };
-diff -up firefox-85.0/media/ffvpx/libavcodec/libfdk-aacdec.c.1667096 firefox-85.0/media/ffvpx/libavcodec/libfdk-aacdec.c
---- firefox-85.0/media/ffvpx/libavcodec/libfdk-aacdec.c.1667096 2021-01-21 09:56:17.638831832 +0100
-+++ firefox-85.0/media/ffvpx/libavcodec/libfdk-aacdec.c 2021-01-21 09:56:17.638831832 +0100
+diff -up firefox-88.0/media/ffvpx/libavcodec/libfdk-aacdec.c.1667096 firefox-88.0/media/ffvpx/libavcodec/libfdk-aacdec.c
+--- firefox-88.0/media/ffvpx/libavcodec/libfdk-aacdec.c.1667096 2021-04-19 13:34:10.373138674 +0200
++++ firefox-88.0/media/ffvpx/libavcodec/libfdk-aacdec.c 2021-04-19 13:34:10.373138674 +0200
@@ -0,0 +1,409 @@
+/*
+ * AAC decoder wrapper
@@ -423,9 +423,9 @@ diff -up firefox-85.0/media/ffvpx/libavcodec/libfdk-aacdec.c.1667096 firefox-85.
+ FF_CODEC_CAP_INIT_CLEANUP,
+ .wrapper_name = "libfdk",
+};
-diff -up firefox-85.0/media/ffvpx/libavcodec/moz.build.1667096 firefox-85.0/media/ffvpx/libavcodec/moz.build
---- firefox-85.0/media/ffvpx/libavcodec/moz.build.1667096 2021-01-21 09:56:17.638831832 +0100
-+++ firefox-85.0/media/ffvpx/libavcodec/moz.build 2021-01-21 10:06:18.958716728 +0100
+diff -up firefox-88.0/media/ffvpx/libavcodec/moz.build.1667096 firefox-88.0/media/ffvpx/libavcodec/moz.build
+--- firefox-88.0/media/ffvpx/libavcodec/moz.build.1667096 2021-04-15 21:44:32.000000000 +0200
++++ firefox-88.0/media/ffvpx/libavcodec/moz.build 2021-04-19 13:34:10.374138704 +0200
@@ -104,6 +104,12 @@ if not CONFIG['MOZ_FFVPX_AUDIOONLY']:
]
USE_LIBS += ['mozva']
@@ -439,12 +439,12 @@ diff -up firefox-85.0/media/ffvpx/libavcodec/moz.build.1667096 firefox-85.0/medi
if CONFIG['MOZ_LIBAV_FFT']:
SOURCES += [
'avfft.c',
-diff -up firefox-85.0/toolkit/moz.configure.1667096 firefox-85.0/toolkit/moz.configure
---- firefox-85.0/toolkit/moz.configure.1667096 2021-01-21 09:56:17.603830793 +0100
-+++ firefox-85.0/toolkit/moz.configure 2021-01-21 09:56:17.638831832 +0100
-@@ -1868,6 +1868,14 @@ with only_when(compile_environment):
- set_define("MOZ_LIBAV_FFT", depends(when=libav_fft)(lambda: True))
- set_config("LIBAV_FFT_ASFLAGS", libav_fft.flags)
+diff -up firefox-88.0/toolkit/moz.configure.1667096 firefox-88.0/toolkit/moz.configure
+--- firefox-88.0/toolkit/moz.configure.1667096 2021-04-19 13:34:10.374138704 +0200
++++ firefox-88.0/toolkit/moz.configure 2021-04-19 13:35:29.109506754 +0200
+@@ -1830,6 +1830,14 @@ with only_when(compile_environment):
+ set_config("LIBJPEG_TURBO_USE_NASM", True, when=jpeg_nasm)
+ set_config("LIBJPEG_TURBO_ASFLAGS", in_tree_jpeg)
+# fdk aac support
+option('--with-system-fdk-aac',
diff --git a/mozilla-1670333.patch b/mozilla-1670333.patch
index b85b1a8..19e64c0 100644
--- a/mozilla-1670333.patch
+++ b/mozilla-1670333.patch
@@ -1,6 +1,6 @@
-diff -up firefox-87.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-87.0/dom/media/mp4/MP4Demuxer.cpp
---- firefox-87.0/dom/media/mp4/MP4Demuxer.cpp.1670333 2021-03-18 14:48:35.000000000 +0100
-+++ firefox-87.0/dom/media/mp4/MP4Demuxer.cpp 2021-03-22 20:05:43.862198652 +0100
+diff -up firefox-88.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-88.0/dom/media/mp4/MP4Demuxer.cpp
+--- firefox-88.0/dom/media/mp4/MP4Demuxer.cpp.1670333 2021-04-15 21:44:28.000000000 +0200
++++ firefox-88.0/dom/media/mp4/MP4Demuxer.cpp 2021-04-19 13:36:44.101762211 +0200
@@ -31,6 +31,8 @@ mozilla::LogModule* GetDemuxerLog() { re
DDMOZ_LOG(gMediaDemuxerLog, mozilla::LogLevel::Debug, "::%s: " arg, \
__func__, ##__VA_ARGS__)
@@ -23,9 +23,9 @@ diff -up firefox-87.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-87.0/dom/medi
if (sample->mKeyframe != keyframe) {
NS_WARNING(nsPrintfCString("Frame incorrectly marked as %skeyframe "
"@ pts:%" PRId64 " dur:%" PRId64
-diff -up firefox-87.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-87.0/dom/media/platforms/PDMFactory.cpp
---- firefox-87.0/dom/media/platforms/PDMFactory.cpp.1670333 2021-03-18 14:48:35.000000000 +0100
-+++ firefox-87.0/dom/media/platforms/PDMFactory.cpp 2021-03-22 20:08:35.850255636 +0100
+diff -up firefox-88.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-88.0/dom/media/platforms/PDMFactory.cpp
+--- firefox-88.0/dom/media/platforms/PDMFactory.cpp.1670333 2021-04-19 13:36:44.087761790 +0200
++++ firefox-88.0/dom/media/platforms/PDMFactory.cpp 2021-04-19 13:39:52.676433734 +0200
@@ -58,6 +58,8 @@
#include <functional>
@@ -35,22 +35,22 @@ diff -up firefox-87.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-87.0/do
namespace mozilla {
#define PDM_INIT_LOG(msg, ...) \
-@@ -558,9 +560,11 @@ void PDMFactory::CreateDefaultPDMs() {
+@@ -572,10 +574,10 @@ void PDMFactory::CreateDefaultPDMs() {
}
#endif
#ifdef MOZ_FFMPEG
- if (StaticPrefs::media_ffmpeg_enabled() &&
- !CreateAndStartupPDM<FFmpegRuntimeLinker>()) {
-- mFailureFlags += DecoderDoctorDiagnostics::Flags::FFmpegFailedToLoad;
+- mFailureFlags += GetFailureFlagBasedOnFFmpegStatus(
+- FFmpegRuntimeLinker::LinkStatusCode());
+ if (StaticPrefs::media_ffmpeg_enabled()) {
+ mFFmpegUsed = CreateAndStartupPDM<FFmpegRuntimeLinker>();
+ if (!mFFmpegUsed) {
-+ mFailureFlags += DecoderDoctorDiagnostics::Flags::FFmpegFailedToLoad;
-+ }
++ mFailureFlags += GetFailureFlagBasedOnFFmpegStatus(FFmpegRuntimeLinker::LinkStatusCode()); }
}
#endif
- #ifdef MOZ_WIDGET_ANDROID
-@@ -572,8 +576,9 @@ void PDMFactory::CreateDefaultPDMs() {
+ #ifdef MOZ_FFVPX
+@@ -592,8 +594,9 @@ void PDMFactory::CreateDefaultPDMs() {
CreateAndStartupPDM<AgnosticDecoderModule>();
@@ -61,10 +61,10 @@ diff -up firefox-87.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-87.0/do
mFailureFlags += DecoderDoctorDiagnostics::Flags::GMPPDMFailedToStartup;
}
}
-diff -up firefox-87.0/dom/media/platforms/PDMFactory.h.1670333 firefox-87.0/dom/media/platforms/PDMFactory.h
---- firefox-87.0/dom/media/platforms/PDMFactory.h.1670333 2021-03-22 20:05:43.862198652 +0100
-+++ firefox-87.0/dom/media/platforms/PDMFactory.h 2021-03-22 20:08:17.705722130 +0100
-@@ -120,6 +120,7 @@ class PDMFactory final {
+diff -up firefox-88.0/dom/media/platforms/PDMFactory.h.1670333 firefox-88.0/dom/media/platforms/PDMFactory.h
+--- firefox-88.0/dom/media/platforms/PDMFactory.h.1670333 2021-04-15 21:44:28.000000000 +0200
++++ firefox-88.0/dom/media/platforms/PDMFactory.h 2021-04-19 13:36:44.101762211 +0200
+@@ -121,6 +121,7 @@ class PDMFactory final {
RefPtr<PlatformDecoderModule> mNullPDM;
DecoderDoctorDiagnostics::FlagsSet mFailureFlags;
diff --git a/mozilla-1686888.patch b/mozilla-1686888.patch
deleted file mode 100644
index 36b5e64..0000000
--- a/mozilla-1686888.patch
+++ /dev/null
@@ -1,578 +0,0 @@
-diff -up firefox-86.0/Cargo.lock.1686888-dump-syms firefox-86.0/Cargo.lock
---- firefox-86.0/Cargo.lock.1686888-dump-syms 2021-02-22 15:47:04.000000000 +0100
-+++ firefox-86.0/Cargo.lock 2021-02-24 10:01:09.217178617 +0100
-@@ -1241,6 +1241,13 @@ dependencies = [
- ]
-
- [[package]]
-+name = "dump_syms_rust_demangle"
-+version = "0.1.0"
-+dependencies = [
-+ "rustc-demangle",
-+]
-+
-+[[package]]
- name = "dwrote"
- version = "0.11.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-diff -up firefox-86.0/Cargo.toml.1686888-dump-syms firefox-86.0/Cargo.toml
---- firefox-86.0/Cargo.toml.1686888-dump-syms 2021-02-22 15:47:04.000000000 +0100
-+++ firefox-86.0/Cargo.toml 2021-02-24 10:01:09.217178617 +0100
-@@ -13,6 +13,7 @@ members = [
- "netwerk/test/http3server",
- "security/manager/ssl/osclientcerts",
- "testing/geckodriver",
-+ "toolkit/crashreporter/rust",
- "toolkit/crashreporter/rust_minidump_writer_linux",
- "toolkit/library/gtest/rust",
- "toolkit/library/rust/",
-diff -up firefox-86.0/python/mozbuild/mozbuild/action/dumpsymbols.py.1686888-dump-syms firefox-86.0/python/mozbuild/mozbuild/action/dumpsymbols.py
---- firefox-86.0/python/mozbuild/mozbuild/action/dumpsymbols.py.1686888-dump-syms 2021-02-22 14:43:46.000000000 +0100
-+++ firefox-86.0/python/mozbuild/mozbuild/action/dumpsymbols.py 2021-02-24 10:01:09.218178640 +0100
-@@ -29,7 +29,29 @@ def dump_symbols(target, tracking_file,
- # Build default args for symbolstore.py based on platform.
- sym_store_args = []
-
-- dump_syms_bin = buildconfig.substs["DUMP_SYMS"]
-+ # Find the `dump_syms` binary to use.
-+ dump_syms_bin = None
-+ dump_syms_binaries = []
-+
-+ default_bin = buildconfig.substs.get("DUMP_SYMS")
-+ if default_bin:
-+ dump_syms_binaries.append(default_bin)
-+
-+ # Fallback to the in-tree breakpad version.
-+ dump_syms_binaries.append(
-+ os.path.join(
-+ buildconfig.topobjdir,
-+ "dist",
-+ "host",
-+ "bin",
-+ "dump_syms" + buildconfig.substs["BIN_SUFFIX"],
-+ )
-+ )
-+
-+ for dump_syms_bin in dump_syms_binaries:
-+ if os.path.exists(dump_syms_bin):
-+ break
-+
- os_arch = buildconfig.substs["OS_ARCH"]
- if os_arch == "WINNT":
- sym_store_args.extend(["-c", "--vcs-info"])
-diff -up firefox-86.0/taskcluster/ci/toolchain/minidump_stackwalk.yml.1686888-dump-syms firefox-86.0/taskcluster/ci/toolchain/minidump_stackwalk.yml
---- firefox-86.0/taskcluster/ci/toolchain/minidump_stackwalk.yml.1686888-dump-syms 2021-02-22 15:47:05.000000000 +0100
-+++ firefox-86.0/taskcluster/ci/toolchain/minidump_stackwalk.yml 2021-02-24 10:01:09.218178640 +0100
-@@ -17,7 +17,9 @@ job-defaults:
- - 'config/external/zlib'
- - 'moz.configure'
- - 'toolkit/crashreporter'
-+ - 'toolkit/crashreporter/google-breakpad/src/common'
- - 'toolkit/crashreporter/google-breakpad/src/processor'
-+ - 'toolkit/crashreporter/rust'
- - 'tools/crashreporter/'
- toolchain-artifact: public/build/minidump_stackwalk.tar.xz
- run-on-projects:
-diff -up firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/dwarf/moz.build.1686888-dump-syms firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/dwarf/moz.build
---- firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/dwarf/moz.build.1686888-dump-syms 2021-02-24 10:01:09.218178640 +0100
-+++ firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/dwarf/moz.build 2021-02-24 10:01:09.218178640 +0100
-@@ -0,0 +1,35 @@
-+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
-+# vim: set filetype=python:
-+# This Source Code Form is subject to the terms of the Mozilla Public
-+# License, v. 2.0. If a copy of the MPL was not distributed with this
-+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-+
-+HostLibrary('host_breakpad_dwarf_s')
-+HOST_SOURCES += [
-+ 'bytereader.cc',
-+ 'dwarf2diehandler.cc',
-+ 'dwarf2reader.cc',
-+ 'elf_reader.cc',
-+ 'functioninfo.cc',
-+]
-+HOST_CXXFLAGS += [
-+ '-O2',
-+ '-g',
-+]
-+
-+# need static lib
-+FORCE_STATIC_LIB = True
-+
-+# This code is only compiled for build-time tools,
-+# so enabling RTTI should be fine.
-+HOST_CXXFLAGS += [
-+ '-frtti',
-+ '-funsigned-char',
-+]
-+
-+if CONFIG['OS_ARCH'] == 'Darwin':
-+ HOST_CXXFLAGS += [
-+ '-stdlib=libc++',
-+ ]
-+
-+include('/toolkit/crashreporter/crashreporter.mozbuild')
-diff -up firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/linux/moz.build.1686888-dump-syms firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/linux/moz.build
---- firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/linux/moz.build.1686888-dump-syms 2021-02-22 14:43:54.000000000 +0100
-+++ firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/linux/moz.build 2021-02-24 10:01:09.218178640 +0100
-@@ -21,6 +21,24 @@ if CONFIG['OS_TARGET'] != 'Android':
- 'http_upload.cc',
- ]
-
-+if CONFIG['HOST_OS_ARCH'] == 'Linux':
-+ HostLibrary('host_breakpad_linux_common_s')
-+
-+ HOST_SOURCES += [
-+ 'crc32.cc',
-+ 'dump_symbols.cc',
-+ 'elf_symbols_to_module.cc',
-+ 'elfutils.cc',
-+ 'file_id.cc',
-+ 'linux_libc_support.cc',
-+ 'memory_mapped_file.cc',
-+ ]
-+
-+ HOST_CXXFLAGS += [
-+ '-O2',
-+ '-g',
-+ ]
-+
- if CONFIG['OS_TARGET'] == 'Android':
- DEFINES['ANDROID_NDK_MAJOR_VERSION'] = CONFIG['ANDROID_NDK_MAJOR_VERSION']
- DEFINES['ANDROID_NDK_MINOR_VERSION'] = CONFIG['ANDROID_NDK_MINOR_VERSION']
-@@ -36,6 +54,8 @@ if not CONFIG['HAVE_GETCONTEXT']:
-
- Library('breakpad_linux_common_s')
-
-+HOST_DEFINES['NO_STABS_SUPPORT'] = True
-+
- include('/toolkit/crashreporter/crashreporter.mozbuild')
-
- if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
-diff -up firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/mac/moz.build.1686888-dump-syms firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/mac/moz.build
---- firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/mac/moz.build.1686888-dump-syms 2021-02-22 14:43:54.000000000 +0100
-+++ firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/mac/moz.build 2021-02-24 10:01:09.218178640 +0100
-@@ -13,6 +13,26 @@ UNIFIED_SOURCES += [
- 'macho_walker.cc',
- ]
-
-+if CONFIG['HOST_OS_ARCH'] != 'Darwin':
-+ HOST_CXXFLAGS += [
-+ '-I%s/toolkit/crashreporter/google-breakpad/src/third_party/mac_headers/' % TOPSRCDIR,
-+ ]
-+
-+# This is a little weird, but we're building a host and a target lib here.
-+# The host lib is used for dump_syms, and the target lib for the
-+# crash reporter client. Therefore, we don't need all the srcs in both.
-+if CONFIG['MOZ_CRASHREPORTER']:
-+ HOST_SOURCES += UNIFIED_SOURCES
-+ HOST_SOURCES += [
-+ 'dump_syms.cc',
-+ ]
-+ HOST_CXXFLAGS += [
-+ '-O2',
-+ '-g',
-+ '-stdlib=libc++',
-+ ]
-+ HostLibrary('host_breakpad_mac_common_s')
-+
- SOURCES += [
- 'bootstrap_compat.cc',
- 'HTTPMultipartUpload.m',
-diff -up firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/moz.build.1686888-dump-syms firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/moz.build
---- firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/moz.build.1686888-dump-syms 2021-02-22 14:43:54.000000000 +0100
-+++ firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/moz.build 2021-02-24 10:01:09.218178640 +0100
-@@ -14,6 +14,51 @@ if CONFIG['OS_ARCH'] == 'Darwin':
- 'md5.cc',
- ]
-
-+if CONFIG['OS_ARCH'] == 'Linux':
-+ HOST_DEFINES['HAVE_A_OUT_H'] = True
-+elif CONFIG['OS_ARCH'] == 'Darwin':
-+ HOST_DEFINES['HAVE_MACH_O_NLIST_H'] = True
-+ HOST_SOURCES += [
-+ 'stabs_reader.cc',
-+ 'stabs_to_module.cc',
-+ ]
-+ if CONFIG['HOST_OS_ARCH'] != 'Darwin':
-+ HOST_CXXFLAGS += [
-+ '-I%s/toolkit/crashreporter/google-breakpad/src/third_party/mac_headers/' % TOPSRCDIR,
-+ ]
-+
-+if CONFIG['HOST_OS_ARCH'] != 'WINNT':
-+ if CONFIG['OS_ARCH'] in ('Darwin', 'Linux'):
-+ DIRS += ['dwarf']
-+
-+ HOST_SOURCES += [
-+ 'arm_ex_reader.cc',
-+ 'arm_ex_to_module.cc',
-+ 'convert_UTF.cc',
-+ 'dwarf_cfi_to_module.cc',
-+ 'dwarf_cu_to_module.cc',
-+ 'dwarf_line_to_module.cc',
-+ 'dwarf_range_list_handler.cc',
-+ 'language.cc',
-+ 'md5.cc',
-+ 'module.cc',
-+ 'path_helper.cc',
-+ 'string_conversion.cc',
-+ ]
-+ if CONFIG['OS_ARCH'] == 'Darwin':
-+ HOST_CXXFLAGS += [
-+ '-stdlib=libc++',
-+ ]
-+ HOST_CXXFLAGS += [
-+ '-O2',
-+ '-g',
-+ ]
-+ HOST_DEFINES['HAVE_RUST_DEMANGLE'] = True
-+ LOCAL_INCLUDES += [
-+ '/toolkit/crashreporter/rust',
-+ ]
-+ HostLibrary('host_breakpad_common_s')
-+
- Library('breakpad_common_s')
-
- include('/toolkit/crashreporter/crashreporter.mozbuild')
-diff -up firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/solaris/moz.build.1686888-dump-syms firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/solaris/moz.build
---- firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/solaris/moz.build.1686888-dump-syms 2021-02-24 10:01:09.218178640 +0100
-+++ firefox-86.0/toolkit/crashreporter/google-breakpad/src/common/solaris/moz.build 2021-02-24 10:01:09.218178640 +0100
-@@ -0,0 +1,34 @@
-+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
-+# vim: set filetype=python:
-+# This Source Code Form is subject to the terms of the Mozilla Public
-+# License, v. 2.0. If a copy of the MPL was not distributed with this
-+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-+
-+UNIFIED_SOURCES += [
-+ 'dump_symbols.cc',
-+ 'file_id.cc',
-+ 'guid_creator.cc',
-+]
-+
-+HostLibrary('host_breakpad_solaris_common_s')
-+
-+Library('breakpad_solaris_common_s')
-+
-+# not compiling http_upload.cc currently
-+# since it depends on libcurl
-+HOST_SOURCES += [
-+ 'dump_symbols.cc',
-+ 'file_id.cc',
-+ 'guid_creator.cc',
-+]
-+HOST_CXXFLAGS += [
-+ '-O2',
-+ '-g',
-+]
-+
-+FINAL_LIBRARY = 'xul'
-+
-+LOCAL_INCLUDES += [
-+ '../..',
-+]
-+
-diff -up firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/moz.build.1686888-dump-syms firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/moz.build
---- firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/moz.build.1686888-dump-syms 2021-02-24 10:01:09.218178640 +0100
-+++ firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/moz.build 2021-02-24 10:01:09.218178640 +0100
-@@ -0,0 +1,45 @@
-+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
-+# vim: set filetype=python:
-+# This Source Code Form is subject to the terms of the Mozilla Public
-+# License, v. 2.0. If a copy of the MPL was not distributed with this
-+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-+
-+HostProgram('dump_syms')
-+
-+HOST_SOURCES += [
-+ 'dump_syms.cc',
-+]
-+
-+HOST_CXXFLAGS += [
-+ '-O2',
-+ '-g',
-+]
-+
-+# host_breakpad_linux_common_s needs to come first
-+HOST_USE_LIBS += [
-+ 'host_breakpad_linux_common_s',
-+]
-+HOST_USE_LIBS += [
-+ 'host_breakpad_common_s',
-+ 'host_breakpad_dwarf_s',
-+]
-+# Order matters here, but HOST_USE_LIBS must be sorted.
-+HOST_USE_LIBS += [
-+ 'dump_syms_rust_demangle',
-+]
-+# Ideally, this should be derived from the output of rustc
-+# --print=native-static-libs or something like that.
-+HOST_OS_LIBS += [
-+ 'dl',
-+ 'pthread',
-+]
-+if CONFIG['HOST_OS_ARCH'] == 'Linux':
-+ HOST_OS_LIBS += [
-+ 'rt',
-+ ]
-+
-+LOCAL_INCLUDES += [
-+ '../../../common/linux',
-+]
-+
-+include('/toolkit/crashreporter/crashreporter.mozbuild')
-diff -up firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/mac/dump_syms/moz.build.1686888-dump-syms firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/mac/dump_syms/moz.build
---- firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/mac/dump_syms/moz.build.1686888-dump-syms 2021-02-24 10:01:09.218178640 +0100
-+++ firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/mac/dump_syms/moz.build 2021-02-24 10:01:09.218178640 +0100
-@@ -0,0 +1,52 @@
-+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
-+# vim: set filetype=python:
-+# This Source Code Form is subject to the terms of the Mozilla Public
-+# License, v. 2.0. If a copy of the MPL was not distributed with this
-+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-+
-+HostProgram('dump_syms')
-+
-+HOST_SOURCES += [
-+ 'dump_syms_tool.cc',
-+]
-+
-+HOST_CXXFLAGS += [
-+ '-O2',
-+ '-g',
-+ '-pthread',
-+ '-stdlib=libc++',
-+]
-+
-+# Order matters here, but HOST_USE_LIBS must be sorted.
-+HOST_USE_LIBS += [
-+ 'host_breakpad_mac_common_s',
-+]
-+HOST_USE_LIBS += [
-+ 'host_breakpad_common_s',
-+ 'host_breakpad_dwarf_s',
-+]
-+# Order matters here, but HOST_USE_LIBS must be sorted.
-+HOST_USE_LIBS += [
-+ 'dump_syms_rust_demangle',
-+]
-+# Ideally, this should be derived from the output of rustc
-+# --print=native-static-libs or something like that.
-+HOST_OS_LIBS += [
-+ 'dl',
-+ 'pthread',
-+]
-+if CONFIG['HOST_OS_ARCH'] == 'Linux':
-+ HOST_OS_LIBS += [
-+ 'rt',
-+ ]
-+
-+LOCAL_INCLUDES += [
-+ '../../../common/mac',
-+]
-+
-+if CONFIG['HOST_OS_ARCH'] != 'Darwin':
-+ HOST_CXXFLAGS += [
-+ '-I%s/toolkit/crashreporter/google-breakpad/src/third_party/mac_headers/' % TOPSRCDIR,
-+ ]
-+
-+include('/toolkit/crashreporter/crashreporter.mozbuild')
-diff -up firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/solaris/dump_syms/moz.build.1686888-dump-syms firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/solaris/dump_syms/moz.build
---- firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/solaris/dump_syms/moz.build.1686888-dump-syms 2021-02-24 10:01:09.218178640 +0100
-+++ firefox-86.0/toolkit/crashreporter/google-breakpad/src/tools/solaris/dump_syms/moz.build 2021-02-24 10:01:09.218178640 +0100
-@@ -0,0 +1,27 @@
-+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
-+# vim: set filetype=python:
-+# This Source Code Form is subject to the terms of the Mozilla Public
-+# License, v. 2.0. If a copy of the MPL was not distributed with this
-+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-+
-+HostProgram('dump_syms')
-+
-+HOST_SOURCES += [
-+ 'dump_syms.cc',
-+]
-+
-+HOST_CXXFLAGS += [
-+ '-O2',
-+ '-g',
-+]
-+
-+HOST_USE_LIBS += [
-+ 'host_breakpad_common_s',
-+ 'host_breakpad_solaris_common_s',
-+]
-+
-+LOCAL_INCLUDES += [
-+ '../../../common/solaris',
-+]
-+
-+include('/toolkit/crashreporter/crashreporter.mozbuild')
-diff -up firefox-86.0/toolkit/crashreporter/moz.build.1686888-dump-syms firefox-86.0/toolkit/crashreporter/moz.build
---- firefox-86.0/toolkit/crashreporter/moz.build.1686888-dump-syms 2021-02-22 14:43:54.000000000 +0100
-+++ firefox-86.0/toolkit/crashreporter/moz.build 2021-02-24 10:02:32.742171784 +0100
-@@ -43,6 +43,11 @@ if CONFIG["MOZ_CRASHREPORTER"]:
- "google-breakpad/src/common/mac",
- "google-breakpad/src/processor",
- ]
-+ if not CONFIG["DUMP_SYMS"]:
-+ DIRS += [
-+ "google-breakpad/src/tools/mac/dump_syms",
-+ "rust",
-+ ]
-
- elif CONFIG["OS_ARCH"] == "Linux":
- DIRS += [
-@@ -56,6 +61,12 @@ if CONFIG["MOZ_CRASHREPORTER"]:
- if CONFIG["MOZ_OXIDIZED_BREAKPAD"]:
- DIRS += ["rust_minidump_writer_linux"]
-
-+ if not CONFIG["DUMP_SYMS"] and CONFIG["HOST_OS_ARCH"] == "Linux":
-+ DIRS += [
-+ "google-breakpad/src/tools/linux/dump_syms",
-+ "rust",
-+ ]
-+
- DIRS += [
- "client",
- "minidump-analyzer",
-diff -up firefox-86.0/toolkit/crashreporter/rust/Cargo.toml.1686888-dump-syms firefox-86.0/toolkit/crashreporter/rust/Cargo.toml
---- firefox-86.0/toolkit/crashreporter/rust/Cargo.toml.1686888-dump-syms 2021-02-24 10:01:09.219178664 +0100
-+++ firefox-86.0/toolkit/crashreporter/rust/Cargo.toml 2021-02-24 10:01:09.219178664 +0100
-@@ -0,0 +1,16 @@
-+[package]
-+name = "dump_syms_rust_demangle"
-+version = "0.1.0"
-+
-+[dependencies]
-+rustc-demangle = "0.1"
-+
-+[lib]
-+path = "lib.rs"
-+crate-type = ["staticlib"]
-+test = false
-+doctest = false
-+bench = false
-+doc = false
-+plugin = false
-+harness = false
-diff -up firefox-86.0/toolkit/crashreporter/rust/lib.rs.1686888-dump-syms firefox-86.0/toolkit/crashreporter/rust/lib.rs
---- firefox-86.0/toolkit/crashreporter/rust/lib.rs.1686888-dump-syms 2021-02-24 10:01:09.219178664 +0100
-+++ firefox-86.0/toolkit/crashreporter/rust/lib.rs 2021-02-24 10:01:09.219178664 +0100
-@@ -0,0 +1,32 @@
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-+ * License, v. 2.0. If a copy of the MPL was not distributed with this file,
-+ * You can obtain one at http://mozilla.org/MPL/2.0/. */
-+
-+extern crate rustc_demangle;
-+
-+use rustc_demangle::demangle;
-+use std::ffi::{CStr, CString};
-+use std::ptr;
-+
-+/// Demangle `name` as a Rust symbol.
-+///
-+/// The resulting pointer should be freed with `free_demangled_name`.
-+#[no_mangle]
-+pub extern "C" fn rust_demangle(name: *const std::os::raw::c_char) -> *mut std::os::raw::c_char {
-+ let demangled = format!(
-+ "{:#}",
-+ demangle(&unsafe { CStr::from_ptr(name) }.to_string_lossy())
-+ );
-+ CString::new(demangled)
-+ .map(|s| s.into_raw())
-+ .unwrap_or(ptr::null_mut())
-+}
-+
-+/// Free a string that was returned from `rust_demangle`.
-+#[no_mangle]
-+pub extern "C" fn free_rust_demangled_name(demangled: *mut std::os::raw::c_char) {
-+ if demangled != ptr::null_mut() {
-+ // Just take ownership here.
-+ unsafe { CString::from_raw(demangled) };
-+ }
-+}
-diff -up firefox-86.0/toolkit/crashreporter/rust/moz.build.1686888-dump-syms firefox-86.0/toolkit/crashreporter/rust/moz.build
---- firefox-86.0/toolkit/crashreporter/rust/moz.build.1686888-dump-syms 2021-02-24 10:01:09.219178664 +0100
-+++ firefox-86.0/toolkit/crashreporter/rust/moz.build 2021-02-24 10:01:09.219178664 +0100
-@@ -0,0 +1 @@
-+HostRustLibrary("dump_syms_rust_demangle")
-diff -up firefox-86.0/toolkit/crashreporter/rust/rust_demangle.h.1686888-dump-syms firefox-86.0/toolkit/crashreporter/rust/rust_demangle.h
---- firefox-86.0/toolkit/crashreporter/rust/rust_demangle.h.1686888-dump-syms 2021-02-24 10:01:09.219178664 +0100
-+++ firefox-86.0/toolkit/crashreporter/rust/rust_demangle.h 2021-02-24 10:01:09.219178664 +0100
-@@ -0,0 +1,21 @@
-+/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* vim: set ts=8 sts=2 et sw=2 tw=80: */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-+ * License, v. 2.0. If a copy of the MPL was not distributed with this
-+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-+
-+#ifndef __RUST_DEMANGLE_H__
-+#define __RUST_DEMANGLE_H__
-+
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+
-+extern char* rust_demangle(const char*);
-+extern void free_rust_demangled_name(char*);
-+
-+#ifdef __cplusplus
-+}
-+#endif
-+
-+#endif /* __RUST_DEMANGLE_H__ */
-diff -up firefox-86.0/toolkit/crashreporter/tools/unit-symbolstore.py.1686888-dump-syms firefox-86.0/toolkit/crashreporter/tools/unit-symbolstore.py
---- firefox-86.0/toolkit/crashreporter/tools/unit-symbolstore.py.1686888-dump-syms 2021-02-22 14:43:54.000000000 +0100
-+++ firefox-86.0/toolkit/crashreporter/tools/unit-symbolstore.py 2021-02-24 10:01:09.219178664 +0100
-@@ -539,9 +539,12 @@ class TestFunctional(HelperMixin, unitte
- self.script_path = os.path.join(
- self.topsrcdir, "toolkit", "crashreporter", "tools", "symbolstore.py"
- )
-- self.dump_syms = buildconfig.substs.get("DUMP_SYMS")
-- if not self.dump_syms:
-- self.skip_test = True
-+ if "DUMP_SYMS" in buildconfig.substs:
-+ self.dump_syms = buildconfig.substs["DUMP_SYMS"]
-+ else:
-+ self.dump_syms = os.path.join(
-+ buildconfig.topobjdir, "dist", "host", "bin", "dump_syms"
-+ )
-
- if target_platform() == "WINNT":
- self.target_bin = os.path.join(
-diff -up firefox-86.0/tools/crashreporter/app.mozbuild.1686888-dump-syms firefox-86.0/tools/crashreporter/app.mozbuild
---- firefox-86.0/tools/crashreporter/app.mozbuild.1686888-dump-syms 2021-02-22 14:43:54.000000000 +0100
-+++ firefox-86.0/tools/crashreporter/app.mozbuild 2021-02-24 10:01:09.219178664 +0100
-@@ -4,6 +4,20 @@
-
- DIRS += [
- '/config/external/zlib',
-+ '/toolkit/crashreporter/google-breakpad/src/common',
- '/toolkit/crashreporter/google-breakpad/src/processor',
-+ '/toolkit/crashreporter/rust',
- '/tools/crashreporter/minidump_stackwalk',
- ]
-+
-+if CONFIG['OS_ARCH'] == 'Linux':
-+ DIRS += [
-+ '/toolkit/crashreporter/google-breakpad/src/common/linux',
-+ '/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms',
-+ ]
-+
-+if CONFIG['OS_ARCH'] == 'Darwin':
-+ DIRS += [
-+ '/toolkit/crashreporter/google-breakpad/src/common/mac',
-+ '/toolkit/crashreporter/google-breakpad/src/tools/mac/dump_syms',
-+ ]
-diff -up firefox-86.0/tools/lint/clippy.yml.1686888-dump-syms firefox-86.0/tools/lint/clippy.yml
---- firefox-86.0/tools/lint/clippy.yml.1686888-dump-syms 2021-02-22 15:47:05.000000000 +0100
-+++ firefox-86.0/tools/lint/clippy.yml 2021-02-24 10:01:09.219178664 +0100
-@@ -63,6 +63,7 @@ clippy:
- # not_unsafe_ptr_arg_deref
- - modules/libpref/parser/
- - tools/profiler/rust-helper/
-+ - toolkit/crashreporter/rust/
- - toolkit/library/rust/shared/
- - toolkit/library/gtest/rust/
- # not_unsafe_ptr_arg_deref
diff --git a/pgo.patch b/pgo.patch
index 12b8940..13a445b 100644
--- a/pgo.patch
+++ b/pgo.patch
@@ -1,6 +1,6 @@
-diff -up firefox-85.0/build/moz.configure/lto-pgo.configure.pgo firefox-85.0/build/moz.configure/lto-pgo.configure
---- firefox-85.0/build/moz.configure/lto-pgo.configure.pgo 2021-01-18 19:29:32.000000000 +0100
-+++ firefox-85.0/build/moz.configure/lto-pgo.configure 2021-01-21 10:23:59.499111297 +0100
+diff -up firefox-88.0/build/moz.configure/lto-pgo.configure.pgo firefox-88.0/build/moz.configure/lto-pgo.configure
+--- firefox-88.0/build/moz.configure/lto-pgo.configure.pgo 2021-04-15 21:44:26.000000000 +0200
++++ firefox-88.0/build/moz.configure/lto-pgo.configure 2021-04-19 13:45:00.240696430 +0200
@@ -240,13 +240,13 @@ def lto(
cflags.append("-flto")
ldflags.append("-flto")
@@ -18,9 +18,9 @@ diff -up firefox-85.0/build/moz.configure/lto-pgo.configure.pgo firefox-85.0/bui
# With clang-cl, -flto can only be used with -c or -fuse-ld=lld.
# AC_TRY_LINKs during configure don't have -c, so pass -fuse-ld=lld.
cflags.append("-fuse-ld=lld")
-diff -up firefox-85.0/build/pgo/profileserver.py.pgo firefox-85.0/build/pgo/profileserver.py
---- firefox-85.0/build/pgo/profileserver.py.pgo 2021-01-18 19:29:32.000000000 +0100
-+++ firefox-85.0/build/pgo/profileserver.py 2021-01-21 10:23:59.499111297 +0100
+diff -up firefox-88.0/build/pgo/profileserver.py.pgo firefox-88.0/build/pgo/profileserver.py
+--- firefox-88.0/build/pgo/profileserver.py.pgo 2021-04-15 21:44:26.000000000 +0200
++++ firefox-88.0/build/pgo/profileserver.py 2021-04-19 13:45:00.240696430 +0200
@@ -11,7 +11,7 @@ import glob
import subprocess
@@ -67,10 +67,10 @@ diff -up firefox-85.0/build/pgo/profileserver.py.pgo firefox-85.0/build/pgo/prof
llvm_profdata = env.get("LLVM_PROFDATA")
if llvm_profdata:
profraw_files = glob.glob("*.profraw")
-diff -up firefox-85.0/build/unix/mozconfig.unix.pgo firefox-85.0/build/unix/mozconfig.unix
---- firefox-85.0/build/unix/mozconfig.unix.pgo 2021-01-18 19:29:32.000000000 +0100
-+++ firefox-85.0/build/unix/mozconfig.unix 2021-01-21 10:23:59.499111297 +0100
-@@ -6,6 +6,15 @@ if [ -n "$FORCE_GCC" ]; then
+diff -up firefox-88.0/build/unix/mozconfig.unix.pgo firefox-88.0/build/unix/mozconfig.unix
+--- firefox-88.0/build/unix/mozconfig.unix.pgo 2021-04-15 21:44:26.000000000 +0200
++++ firefox-88.0/build/unix/mozconfig.unix 2021-04-19 13:45:00.240696430 +0200
+@@ -4,6 +4,15 @@ if [ -n "$FORCE_GCC" ]; then
CC="$MOZ_FETCHES_DIR/gcc/bin/gcc"
CXX="$MOZ_FETCHES_DIR/gcc/bin/g++"
@@ -86,19 +86,19 @@ diff -up firefox-85.0/build/unix/mozconfig.unix.pgo firefox-85.0/build/unix/mozc
# We want to make sure we use binutils and other binaries in the tooltool
# package.
mk_add_options "export PATH=$MOZ_FETCHES_DIR/gcc/bin:$PATH"
-diff -up firefox-85.0/extensions/spellcheck/src/moz.build.pgo firefox-85.0/extensions/spellcheck/src/moz.build
---- firefox-85.0/extensions/spellcheck/src/moz.build.pgo 2021-01-18 19:29:38.000000000 +0100
-+++ firefox-85.0/extensions/spellcheck/src/moz.build 2021-01-21 10:23:59.499111297 +0100
+diff -up firefox-88.0/extensions/spellcheck/src/moz.build.pgo firefox-88.0/extensions/spellcheck/src/moz.build
+--- firefox-88.0/extensions/spellcheck/src/moz.build.pgo 2021-04-15 21:44:28.000000000 +0200
++++ firefox-88.0/extensions/spellcheck/src/moz.build 2021-04-19 13:45:00.240696430 +0200
@@ -31,3 +31,5 @@ EXPORTS.mozilla += [
if CONFIG["CC_TYPE"] in ("clang", "gcc"):
CXXFLAGS += ["-Wno-error=shadow"]
+
+CXXFLAGS += ['-fno-devirtualize']
-diff -up firefox-85.0/toolkit/components/terminator/nsTerminator.cpp.pgo firefox-85.0/toolkit/components/terminator/nsTerminator.cpp
---- firefox-85.0/toolkit/components/terminator/nsTerminator.cpp.pgo 2021-01-18 19:31:16.000000000 +0100
-+++ firefox-85.0/toolkit/components/terminator/nsTerminator.cpp 2021-01-21 10:23:59.500111327 +0100
-@@ -430,6 +430,11 @@ void nsTerminator::StartWatchdog() {
+diff -up firefox-88.0/toolkit/components/terminator/nsTerminator.cpp.pgo firefox-88.0/toolkit/components/terminator/nsTerminator.cpp
+--- firefox-88.0/toolkit/components/terminator/nsTerminator.cpp.pgo 2021-04-19 13:45:00.240696430 +0200
++++ firefox-88.0/toolkit/components/terminator/nsTerminator.cpp 2021-04-19 13:46:01.144530790 +0200
+@@ -456,6 +456,11 @@ void nsTerminator::StartWatchdog() {
}
#endif
@@ -108,5 +108,5 @@ diff -up firefox-85.0/toolkit/components/terminator/nsTerminator.cpp.pgo firefox
+ crashAfterMS = INT32_MAX;
+
UniquePtr<Options> options(new Options());
- const PRIntervalTime ticksDuration = PR_MillisecondsToInterval(1000);
- options->crashAfterTicks = crashAfterMS / ticksDuration;
+ const PRIntervalTime ticksDuration =
+ PR_MillisecondsToInterval(HEARTBEAT_INTERVAL_MS);
diff --git a/run-tests-x11 b/run-tests-x11
index 3fe4cd1..bec9523 100755
--- a/run-tests-x11
+++ b/run-tests-x11
@@ -27,6 +27,7 @@ export TEST_FLAVOUR="-wr"
xvfb-run -s "$X_PARAMS" -n 95 ./mach xpcshell-test --sequential $TEST_PARAMS 2>&1 | cat - | tee $TEST_DIR/xpcshell-wr
xvfb-run -s "$X_PARAMS" -n 96 ./mach reftest --marionette localhost:$(($(($RANDOM))+2000)) $TEST_PARAMS 2>&1 | tee $TEST_DIR/reftest$TEST_FLAVOUR
xvfb-run -s "$X_PARAMS" -n 97 ./mach crashtest --marionette localhost:$(($(($RANDOM))+2000)) $TEST_PARAMS 2>&1 | tee $TEST_DIR/crashtest$TEST_FLAVOUR
+#xvfb-run -s "$X_PARAMS" -n 98 ./mach mochitest dom --marionette localhost:$(($(($RANDOM))+2000)) $MOCHITEST_PARAMS $TEST_PARAMS 2>&1 | tee $TEST_DIR/mochitest$TEST_FLAVOUR
#xvfb-run -s "$X_PARAMS" -n 98 ./mach mochitest --marionette localhost:$(($(($RANDOM))+2000)) $MOCHITEST_PARAMS $TEST_PARAMS 2>&1 | tee $TEST_DIR/mochitest$TEST_FLAVOUR
rm -f objdir/dist/bin/certutil
diff --git a/sources b/sources
index 47f6d1f..1de307d 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,4 @@
SHA512 (mochitest-python.tar.gz) = 7f357cb8bd93d64be5cb75819a8a813d2f8f217ff25f0df8c3190910744132405d45797b3900775a44b554f5c70cf2682809c9e7a686ca131fddcd81e98028d9
SHA512 (cbindgen-vendor.tar.xz) = f122880b80009e5d5147b40147ba383731922e618d50312067cab0be6a0873adde5d5dbe2e6688b41c1a7e0f0ca2f1cccfa789e7b834b69f8c5445cc46ecccaf
-SHA512 (firefox-87.0.source.tar.xz) = c1c08be2283e7a162c8be2f2647ec2bb85cab592738dc45e4b4ffb72969229cc0019a30782a4cb27f09a13b088c63841071dd202b3543dfba295140a7d6246a4
-SHA512 (firefox-langpacks-87.0-20210322.tar.xz) = c532947e16edee1d26ca7b426509329eef1a70b1127c5bce607764b40bd58ba91a68dae35d2094b3a33bb04c155cbee1a503e694a4444c5e98a448348bab5de0
+SHA512 (firefox-langpacks-88.0-20210419.tar.xz) = 5457d63a8d6e4c8446cd4e9689e2dc8e64d333acfaf58007e323a17ffe0d84659cea7c7919652b65bf0781763e15569f32444a7ed9a232f852210e6c1d8e89b3
+SHA512 (firefox-88.0.source.tar.xz) = f58f44f2f0d0f54eae5ab4fa439205feb8b9209b1bf2ea2ae0c9691e9e583bae2cbd4033edb5bdf4e37eda5b95fca688499bed000fe26ced8ff4bbc49347ce31
bgstack15