1
0

Accepting request 943030 from home:iznogood:branches:mozilla:Factory

- Add upstream patches:
  * mozilla-bmo1745560.patch: Fix build against wayland 1.20.
  * mozilla-bmo1744896.patch: Create WaylandVsyncSource on window
    creation

OBS-URL: https://build.opensuse.org/request/show/943030
OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox?expand=0&rev=949
This commit is contained in:
Wolfgang Rosenauer 2021-12-29 09:38:41 +00:00 committed by Git OBS Bridge
parent f6424d435d
commit b18fda39cd
4 changed files with 70 additions and 0 deletions

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Tue Dec 28 17:45:28 UTC 2021 - Bjørn Lie <bjorn.lie@gmail.com>
- Add upstream patches:
* mozilla-bmo1745560.patch: Fix build against wayland 1.20.
* mozilla-bmo1744896.patch: Create WaylandVsyncSource on window
creation
-------------------------------------------------------------------
Fri Dec 17 13:49:16 UTC 2021 - Wolfgang Rosenauer <wr@rosenauer.org>

View File

@ -223,6 +223,8 @@ Patch27: mozilla-s390x-skia-gradient.patch
Patch28: mozilla-libavcodec58_91.patch
Patch29: mozilla-silence-no-return-type.patch
Patch31: mozilla-bmo531915.patch
Patch32: mozilla-bmo1745560.patch
Patch33: mozilla-bmo1744896.patch
# Firefox/browser
Patch101: firefox-kde.patch
Patch102: firefox-branded-icons.patch
@ -351,6 +353,8 @@ cd $RPM_BUILD_DIR/%{srcname}-%{orig_version}
%patch28 -p1
%patch29 -p1
%patch31 -p1
%patch32 -p1
%patch33 -p1
# Firefox
%patch101 -p1
%patch102 -p1

43
mozilla-bmo1744896.patch Normal file
View File

@ -0,0 +1,43 @@
diff -up firefox-95.0.2/widget/gtk/nsWindow.cpp.1744896 firefox-95.0.2/widget/gtk/nsWindow.cpp
--- firefox-95.0.2/widget/gtk/nsWindow.cpp.1744896 2021-12-23 11:54:31.522539340 +0100
+++ firefox-95.0.2/widget/gtk/nsWindow.cpp 2021-12-23 11:55:56.070270174 +0100
@@ -5765,6 +5765,17 @@ nsresult nsWindow::Create(nsIWidget* aPa
}
}
#endif
+#ifdef MOZ_WAYLAND
+ // Initialize the window specific VsyncSource early in order to avoid races
+ // with BrowserParent::UpdateVsyncParentVsyncSource().
+ // Only use for toplevel windows for now, see bug 1619246.
+ if (GdkIsWaylandDisplay() &&
+ StaticPrefs::widget_wayland_vsync_enabled_AtStartup() &&
+ mWindowType == eWindowType_toplevel) {
+ mWaylandVsyncSource = new WaylandVsyncSource();
+ MOZ_RELEASE_ASSERT(mWaylandVsyncSource);
+ }
+#endif
// We create input contexts for all containers, except for
// toplevel popup windows
@@ -6077,19 +6088,12 @@ void nsWindow::ResumeCompositorFromCompo
void nsWindow::WaylandStartVsync() {
#ifdef MOZ_WAYLAND
- // only use for toplevel windows for now - see bug 1619246
- if (!GdkIsWaylandDisplay() ||
- !StaticPrefs::widget_wayland_vsync_enabled_AtStartup() ||
- mWindowType != eWindowType_toplevel) {
+ if (!mWaylandVsyncSource) {
return;
}
LOG("nsWindow::WaylandStartVsync() [%p]\n", (void*)this);
- if (!mWaylandVsyncSource) {
- mWaylandVsyncSource = new WaylandVsyncSource();
- }
-
WaylandVsyncSource::WaylandDisplay& display =
static_cast<WaylandVsyncSource::WaylandDisplay&>(
mWaylandVsyncSource->GetGlobalDisplay());

15
mozilla-bmo1745560.patch Normal file
View File

@ -0,0 +1,15 @@
diff --git a/widget/gtk/mozwayland/mozwayland.c b/widget/gtk/mozwayland/mozwayland.c
--- a/widget/gtk/mozwayland/mozwayland.c
+++ b/widget/gtk/mozwayland/mozwayland.c
@@ -200,3 +200,10 @@
MOZ_EXPORT void wl_list_insert_list(struct wl_list* list,
struct wl_list* other) {}
+
+MOZ_EXPORT struct wl_proxy* wl_proxy_marshal_flags(
+ struct wl_proxy* proxy, uint32_t opcode,
+ const struct wl_interface* interface, uint32_t version, uint32_t flags,
+ ...) {
+ return NULL;
+}