diff options
author | Martin Stransky <stransky@redhat.com> | 2018-02-02 16:49:59 +0100 |
---|---|---|
committer | Martin Stransky <stransky@redhat.com> | 2018-02-02 16:49:59 +0100 |
commit | 00a8463181c33d1586b0c4c73c55703a296c6fde (patch) | |
tree | e786656cd54b83903e57158fc33d90a144c5cf19 /queue-crash.patch | |
parent | Fixed Firefox X11 desktop file launcher. (diff) | |
download | librewolf-fedora-ff-00a8463181c33d1586b0c4c73c55703a296c6fde.tar.gz librewolf-fedora-ff-00a8463181c33d1586b0c4c73c55703a296c6fde.tar.bz2 librewolf-fedora-ff-00a8463181c33d1586b0c4c73c55703a296c6fde.zip |
Fix crash when e10s is disabled and default wl_queue is processed.
Diffstat (limited to 'queue-crash.patch')
-rw-r--r-- | queue-crash.patch | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/queue-crash.patch b/queue-crash.patch new file mode 100644 index 0000000..962fce9 --- /dev/null +++ b/queue-crash.patch @@ -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 |