Hello community,

here is the log from the commit of package xorg-x11 for openSUSE:Factory
checked in at Thu Aug 25 10:03:48 CEST 2011.



--------
--- xorg-x11/xorg-x11.changes   2011-08-08 14:49:22.000000000 +0200
+++ /mounts/work_src_done/STABLE/xorg-x11/xorg-x11.changes      2011-08-24 
16:00:17.000000000 +0200
@@ -6,0 +7,9 @@
+Wed Jun  8 08:30:05 UTC 2011 - e...@suse.de
+
+- add u_luit-Set-up-terminal-before-fork.diff:
+  Set up terminal before fork. 
+  An older version of this patch was dropped as 
+  it didn't apply any more.
+  This patch is to be upstreamed.
+
+-------------------------------------------------------------------

calling whatdependson for head-i586


New:
----
  u_luit-Set-up-terminal-before-fork.diff

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xorg-x11.spec ++++++
--- /var/tmp/diff_new_pack.tC1VUT/_old  2011-08-25 09:46:48.000000000 +0200
+++ /var/tmp/diff_new_pack.tC1VUT/_new  2011-08-25 09:46:48.000000000 +0200
@@ -34,7 +34,7 @@
 BuildRequires:  bison
 Url:            http://xorg.freedesktop.org/
 Version:        7.6
-Release:        57
+Release:        59
 License:        MIT License (or similar)
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 Group:          System/X11/Utilities
@@ -164,6 +164,7 @@
 Patch66:        xinit-suse.diff
 Patch67:        xinit-tolerant-hostname-changes.diff
 Patch69:        xrdb-traditional-cpp.diff
+Patch70:        u_luit-Set-up-terminal-before-fork.diff
 Patch674733:    
xrdb-Create-shell-escape-safe-cpp-options-in-the-non-path-bnc674733.patch
 
 %description
@@ -299,6 +300,9 @@
 ln lisp/README .doc/xedit/lisp.README
 ln lisp/re/README  .doc/xedit/re.README
 popd
+pushd luit-*
+%patch70 -p1
+popd
 
 %build
 

++++++ u_luit-Set-up-terminal-before-fork.diff ++++++
>From 6b1da100f2984701f181f5d2635ffcff06db9be1 Mon Sep 17 00:00:00 2001
From: Mike Fabian <mike.fab...@gmx.de>
Date: Tue, 7 Jun 2011 13:42:00 +0200
Subject: [PATCH] Set up terminal before fork.
Patch-mainline: To be submitted.

After the fork it is undefined wether parent or child runs
first. So there can be a race: if the child runs before the
terminal of the parent is set up correctly luit may hang.
This patch sets up the terminal before forking and undoes
the settings in the child.

Signed-off-by: Egbert Eich <e...@freedesktop.org>
---
 luit.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/luit.c b/luit.c
index 6bd8775..c2a011c 100644
--- a/luit.c
+++ b/luit.c
@@ -577,6 +577,8 @@ condom(int argc, char **argv)
        IGNORE_RC(pipe(c2p_waitpipe));
     }
 
+    setup_io(pty);
+
     pid = fork();
     if (pid < 0) {
        perror("Couldn't fork");
@@ -584,6 +586,10 @@ condom(int argc, char **argv)
     }
 
     if (pid == 0) {
+#ifdef SIGWINCH
+       installHandler(SIGWINCH, SIG_DFL);
+#endif
+       installHandler(SIGCHLD, SIG_DFL);
        close(pty);
        if (pipe_option) {
            close_waitpipe(1);
@@ -661,7 +667,6 @@ parent(int pid GCC_UNUSED, int pty)
     if (verbose) {
        reportIso2022(outputState);
     }
-    setup_io(pty);
 
     if (pipe_option) {
        write_waitpipe(p2c_waitpipe);
-- 
1.7.3.4


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to