Add fix for mozbz#1668771
This commit is contained in:
parent
3b52fb7c93
commit
1bc542f07d
@ -110,7 +110,7 @@ ExcludeArch: s390x
|
||||
Summary: Mozilla Firefox Web browser
|
||||
Name: firefox
|
||||
Version: 81.0.1
|
||||
Release: 3%{?dist}
|
||||
Release: 4%{?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
|
||||
@ -178,6 +178,7 @@ Patch407: mozilla-1667096.patch
|
||||
Patch408: mozilla-1663844.patch
|
||||
Patch409: mozilla-1640567.patch
|
||||
Patch410: mozilla-1661192.patch
|
||||
Patch411: mozilla-1668771.patch
|
||||
|
||||
# Wayland specific upstream patches
|
||||
Patch574: firefox-pipewire-0-2.patch
|
||||
@ -389,6 +390,7 @@ This package contains results of tests executed during build.
|
||||
%patch408 -p1 -b .1663844
|
||||
%patch409 -p1 -b .1640567
|
||||
%patch410 -p1 -b .1661192
|
||||
%patch411 -p1 -b .1668771
|
||||
|
||||
# Wayland specific upstream patches
|
||||
%if 0%{?fedora} < 32
|
||||
@ -978,6 +980,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
||||
#---------------------------------------------------------------------
|
||||
|
||||
%changelog
|
||||
* Thu Oct 2 2020 Martin Stransky <stransky@redhat.com> - 81.0.1-4
|
||||
- Added fix for mozbz#1668771
|
||||
|
||||
* Thu Oct 1 2020 Martin Stransky <stransky@redhat.com> - 81.0.1-3
|
||||
- Added fix for mozbz#1661192
|
||||
|
||||
|
41
mozilla-1668771.patch
Normal file
41
mozilla-1668771.patch
Normal file
@ -0,0 +1,41 @@
|
||||
changeset: 552978:b50cb0696eef
|
||||
tag: tip
|
||||
parent: 552976:2ce12e3e063c
|
||||
user: stransky <stransky@redhat.com>
|
||||
date: Fri Oct 02 12:19:53 2020 +0200
|
||||
files: widget/gtk/WindowSurfaceWayland.cpp
|
||||
description:
|
||||
Bug 1668771 [Wayland] Use timeout for frame callbacks for basic compositor, r?jhorak
|
||||
|
||||
Differential Revision: https://phabricator.services.mozilla.com/D92200
|
||||
|
||||
|
||||
diff --git a/widget/gtk/WindowSurfaceWayland.cpp b/widget/gtk/WindowSurfaceWayland.cpp
|
||||
--- a/widget/gtk/WindowSurfaceWayland.cpp
|
||||
+++ b/widget/gtk/WindowSurfaceWayland.cpp
|
||||
@@ -37,6 +37,9 @@ extern mozilla::LazyLogModule gWidgetWay
|
||||
// Maximal compositing timeout it miliseconds
|
||||
#define COMPOSITING_TIMEOUT 200
|
||||
|
||||
+// Maximal timeout between frame callbacks
|
||||
+#define FRAME_CALLBACK_TIMEOUT 20
|
||||
+
|
||||
namespace mozilla {
|
||||
namespace widget {
|
||||
|
||||
@@ -941,8 +944,12 @@ void WindowSurfaceWayland::CommitWayland
|
||||
if (waylandSurface == mLastCommittedSurface) {
|
||||
LOGWAYLAND((" [%p] wait for frame callback.\n", (void*)this));
|
||||
// We have an active frame callback pending from our recent surface.
|
||||
- // It means we should defer the commit to FrameCallbackHandler().
|
||||
- return;
|
||||
+ // It means we should defer the commit to FrameCallbackHandler(),
|
||||
+ // but only if we're under frame callback timeout range.
|
||||
+ if (mLastCommitTime && (g_get_monotonic_time() / 1000) - mLastCommitTime <
|
||||
+ FRAME_CALLBACK_TIMEOUT) {
|
||||
+ return;
|
||||
+ }
|
||||
}
|
||||
// If our stored wl_surface does not match the actual one it means the frame
|
||||
// callback is no longer active and we should release it.
|
||||
|
Loading…
Reference in New Issue
Block a user