[wayland] Don't use MSG_DONTWAIT in wl_connection_flush.
Adam Jackson
ajax at fedoraproject.org
Mon Oct 7 17:48:04 UTC 2013
commit f48a9b801ead6d021c497c6b77a8eb643a656f14
Author: Adam Jackson <ajax at redhat.com>
Date: Mon Oct 7 13:47:54 2013 -0400
Don't use MSG_DONTWAIT in wl_connection_flush.
wayland-1.2.0-blocking-flush.patch | 13 +++++++++++++
wayland.spec | 10 +++++++++-
2 files changed, 22 insertions(+), 1 deletions(-)
---
diff --git a/wayland-1.2.0-blocking-flush.patch b/wayland-1.2.0-blocking-flush.patch
new file mode 100644
index 0000000..3730de4
--- /dev/null
+++ b/wayland-1.2.0-blocking-flush.patch
@@ -0,0 +1,13 @@
+diff -up wayland-1.2.0/src/connection.c.jx wayland-1.2.0/src/connection.c
+--- wayland-1.2.0/src/connection.c.jx 2013-07-12 21:52:33.000000000 -0400
++++ wayland-1.2.0/src/connection.c 2013-10-07 13:30:40.418925754 -0400
+@@ -283,8 +283,7 @@ wl_connection_flush(struct wl_connection
+ msg.msg_flags = 0;
+
+ do {
+- len = sendmsg(connection->fd, &msg,
+- MSG_NOSIGNAL | MSG_DONTWAIT);
++ len = sendmsg(connection->fd, &msg, MSG_NOSIGNAL);
+ } while (len == -1 && errno == EINTR);
+
+ if (len == -1)
diff --git a/wayland.spec b/wayland.spec
index 1fb0816..36748a9 100644
--- a/wayland.spec
+++ b/wayland.spec
@@ -2,7 +2,7 @@
Name: wayland
Version: 1.2.0
-Release: 2%{?gitdate:.%{gitdate}}%{?dist}
+Release: 3%{?gitdate:.%{gitdate}}%{?dist}
Summary: Wayland Compositor Infrastructure
Group: User Interface/X
@@ -14,6 +14,10 @@ Source0: wayland-%{gitdate}.tar.bz2
Source0: http://wayland.freedesktop.org/releases/%{name}-%{version}.tar.xz
%endif
Source1: make-git-snapshot.sh
+# If this code throws -EAGAIN then wl_proxy_marshal can die, and take your
+# Xwayland server (and thus session) with it. Probably wants to be solved
+# in some other way, but this will do for now.
+Patch0: wayland-1.2.0-blocking-flush.patch
BuildRequires: autoconf automake libtool
BuildRequires: doxygen
@@ -82,6 +86,7 @@ Headers and symlinks for developing wayland server applications.
%prep
%setup -q -n %{name}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}}
+%patch1 -p1 -b .flush
%build
autoreconf -v --install
@@ -152,6 +157,9 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/pkgconfig/wayland-server.pc
%changelog
+* Mon Oct 07 2013 Adam Jackson <ajax at redhat.com> 1.2.0-3
+- Don't use MSG_DONTWAIT in wl_connection_flush.
+
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.2.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
More information about the scm-commits
mailing list