Fix crash when e10s is disabled and default wl_queue is processed.
This commit is contained in:
parent
3a43e3daba
commit
00a8463181
@ -98,7 +98,7 @@ ExclusiveArch: x86_64 i686
|
|||||||
Summary: Mozilla Firefox Web browser
|
Summary: Mozilla Firefox Web browser
|
||||||
Name: firefox
|
Name: firefox
|
||||||
Version: 59.0
|
Version: 59.0
|
||||||
Release: 0.7%{?pre_tag}%{?dist}
|
Release: 0.8%{?pre_tag}%{?dist}
|
||||||
URL: https://www.mozilla.org/firefox/
|
URL: https://www.mozilla.org/firefox/
|
||||||
License: MPLv1.1 or GPLv2+ or LGPLv2+
|
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
|
#Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz
|
||||||
@ -164,6 +164,7 @@ Patch453: mozilla-1433081.patch
|
|||||||
Patch454: remote-profile.patch
|
Patch454: remote-profile.patch
|
||||||
Patch455: mozilla-1434572.patch
|
Patch455: mozilla-1434572.patch
|
||||||
Patch456: mozilla-1434565.patch
|
Patch456: mozilla-1434565.patch
|
||||||
|
Patch457: queue-crash.patch
|
||||||
|
|
||||||
# Debian patches
|
# Debian patches
|
||||||
Patch500: mozilla-440908.patch
|
Patch500: mozilla-440908.patch
|
||||||
@ -335,6 +336,7 @@ This package contains results of tests executed during build.
|
|||||||
%patch454 -p1 -b .remote-profile
|
%patch454 -p1 -b .remote-profile
|
||||||
%patch455 -p1 -b .1434572
|
%patch455 -p1 -b .1434572
|
||||||
%patch456 -p1 -b .1434565
|
%patch456 -p1 -b .1434565
|
||||||
|
%patch457 -p1 -b .queue-crash
|
||||||
|
|
||||||
# Patch for big endian platforms only
|
# Patch for big endian platforms only
|
||||||
%if 0%{?big_endian}
|
%if 0%{?big_endian}
|
||||||
@ -868,6 +870,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
|||||||
#---------------------------------------------------------------------
|
#---------------------------------------------------------------------
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Feb 2 2018 Martin Stransky <stransky@redhat.com> - 59.0-0.8
|
||||||
|
- Fix crash when e10s is disabled and default wl_queue is processed.
|
||||||
|
|
||||||
* Fri Feb 2 2018 Martin Stransky <stransky@redhat.com> - 59.0-0.7
|
* Fri Feb 2 2018 Martin Stransky <stransky@redhat.com> - 59.0-0.7
|
||||||
- Fixed Firefox X11 desktop file launcher.
|
- Fixed Firefox X11 desktop file launcher.
|
||||||
|
|
||||||
|
26
queue-crash.patch
Normal file
26
queue-crash.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
diff --git a/widget/gtk/WindowSurfaceWayland.cpp b/widget/gtk/WindowSurfaceWayland.cpp
|
||||||
|
--- a/widget/gtk/WindowSurfaceWayland.cpp
|
||||||
|
+++ b/widget/gtk/WindowSurfaceWayland.cpp
|
||||||
|
@@ -268,17 +268,21 @@ nsWaylandDisplay::GetShm()
|
||||||
|
|
||||||
|
if (!mShm) {
|
||||||
|
// wl_shm is not provided by Gtk so we need to query wayland directly
|
||||||
|
// See weston/simple-shm.c and create_display() for reference.
|
||||||
|
wl_registry* registry = wl_display_get_registry(mDisplay);
|
||||||
|
wl_registry_add_listener(registry, ®istry_listener, this);
|
||||||
|
|
||||||
|
wl_proxy_set_queue((struct wl_proxy *)registry, mEventQueue);
|
||||||
|
- wl_display_roundtrip_queue(mDisplay, mEventQueue);
|
||||||
|
+ if (mEventQueue) {
|
||||||
|
+ wl_display_roundtrip_queue(mDisplay, mEventQueue);
|
||||||
|
+ } else {
|
||||||
|
+ wl_display_roundtrip(mDisplay);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
MOZ_RELEASE_ASSERT(mShm, "Wayland registry query failed!");
|
||||||
|
}
|
||||||
|
|
||||||
|
return(mShm);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool
|
Loading…
Reference in New Issue
Block a user