diff options
author | B. Stack <bgstack15@gmail.com> | 2021-12-29 16:49:52 -0500 |
---|---|---|
committer | B. Stack <bgstack15@gmail.com> | 2021-12-29 16:49:52 -0500 |
commit | d187ce97f37b88ffd76c470e892d92bcfba2c314 (patch) | |
tree | 058c9458b9bf014106b3ecc6eac15795c3fcbe0e | |
parent | add new file mozilla-1745560.patch (diff) | |
download | librewolf-fedora-ff-b95.0.2-4.tar.gz librewolf-fedora-ff-b95.0.2-4.tar.bz2 librewolf-fedora-ff-b95.0.2-4.zip |
add another missing patch fileb95.0.2-4
-rw-r--r-- | mozilla-1744896.patch | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/mozilla-1744896.patch b/mozilla-1744896.patch new file mode 100644 index 0000000..b3f343e --- /dev/null +++ b/mozilla-1744896.patch @@ -0,0 +1,42 @@ +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()); |