summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaulo R. Zanoni <paulo@c3sl.ufpr.br>2008-08-06 16:58:13 -0300
committerPaulo R. Zanoni <paulo@c3sl.ufpr.br>2008-08-06 16:58:13 -0300
commit16b93c6839f8f4571a99ca5d2147c436e58d926b (patch)
treef6af57d02a47c6930649c9b9c349e77a405c53e9
parent3b3d168e5161c33b701a84e51b52ebf1ee6bc31c (diff)
Added new libx11 patch for Debian Lenny
Now using the latest patch of fdo's bug #6820 Need to update and test Ubuntu's
-rw-r--r--dependencies/debian-lenny/libx11-eagain.patch48
1 files changed, 42 insertions, 6 deletions
diff --git a/dependencies/debian-lenny/libx11-eagain.patch b/dependencies/debian-lenny/libx11-eagain.patch
index 3a4cc0c..03c5613 100644
--- a/dependencies/debian-lenny/libx11-eagain.patch
+++ b/dependencies/debian-lenny/libx11-eagain.patch
@@ -1,15 +1,51 @@
-diff -Nru libx11-1.1.3-no-patch/src/XlibInt.c libx11-1.1.3/src/XlibInt.c
---- libx11-1.1.3-no-patch/src/XlibInt.c 2008-07-01 16:50:06.000000000 -0300
-+++ libx11-1.1.3/src/XlibInt.c 2008-07-01 16:51:49.000000000 -0300
-@@ -135,11 +135,7 @@
+#
+# This patch fixes freedesktop.org bug #6820, which makes Xephyr randomly die
+#
+# https://bugs.freedesktop.org/show_bug.cgi?id=6820
+#
+# Written by Alan Coopersmith
+#
+diff --git a/src/XlibInt.c b/src/XlibInt.c
+index 3a1f96f..56bacba 100644
+--- a/src/XlibInt.c
++++ b/src/XlibInt.c
+@@ -135,11 +135,7 @@ #ifdef __UNIXOS2__
#define ECHECK(err) (errno == err)
#define ESET(val)
#else
-#ifdef ISC
- #define ECHECK(err) ((errno == err) || ETEST())
+-#define ECHECK(err) ((errno == err) || ETEST())
-#else
--#define ECHECK(err) (errno == err)
+ #define ECHECK(err) (errno == err)
-#endif
#define ESET(val) errno = val
#endif
#endif
+@@ -297,7 +293,7 @@ #else
+ nfound = Select (dpy->fd + 1, &r_mask, &w_mask, NULL, NULL);
+ #endif
+ InternalLockDisplay(dpy, cv != NULL);
+- if (nfound < 0 && !ECHECK(EINTR))
++ if (nfound < 0 && !(ECHECK(EINTR) || ETEST()))
+ _XIOError(dpy);
+ } while (nfound <= 0);
+
+@@ -509,7 +505,7 @@ #else
+ result = Select(highest_fd + 1, &r_mask, NULL, NULL, NULL);
+ #endif
+ InternalLockDisplay(dpy, dpy->flags & XlibDisplayReply);
+- if (result == -1 && !ECHECK(EINTR)) _XIOError(dpy);
++ if (result == -1 && !(ECHECK(EINTR) || ETEST())) _XIOError(dpy);
+ if (result <= 0)
+ continue;
+ #ifdef USE_POLL
+@@ -826,7 +822,7 @@ #endif
+ if (!pend)
+ pend = SIZEOF(xReply);
+ }
+- else if (result < 0 && !ECHECK(EINTR))
++ else if (result < 0 && !(ECHECK(EINTR) || ETEST()))
+ _XIOError(dpy);
+ }
+ }
+