forked from pool/MozillaFirefox
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:
parent
f6424d435d
commit
b18fda39cd
@ -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>
|
||||
|
||||
|
@ -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
43
mozilla-bmo1744896.patch
Normal 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
15
mozilla-bmo1745560.patch
Normal 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;
|
||||
+}
|
||||
|
Loading…
Reference in New Issue
Block a user