SHA256
1
0
forked from pool/luit

- removed u_luit-Set-up-terminal-before-fork.diff; upstream author

and maintainer Thomas Dickey can't reproduce the issue and
  downstream, i.e. me, doesn't know how to reproduce it either ...

OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/luit?expand=0&rev=19
This commit is contained in:
Stefan Dirsch 2016-05-23 12:05:11 +00:00 committed by Git OBS Bridge
parent 391cf3aea0
commit 9793f85d0b
3 changed files with 7 additions and 52 deletions

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Mon May 23 12:01:58 UTC 2016 - sndirsch@suse.com
- removed u_luit-Set-up-terminal-before-fork.diff; upstream author
and maintainer Thomas Dickey can't reproduce the issue and
downstream, i.e. me, doesn't know how to reproduce it either ...
-------------------------------------------------------------------
Wed Apr 20 15:48:48 UTC 2016 - sndirsch@suse.com

View File

@ -24,8 +24,6 @@ License: MIT
Group: System/X11/Utilities
Url: http://invisible-island.net/luit/
Source0: ftp://invisible-island.net/%{name}/%{name}-%{version}.tgz
# PATCH-FIX-UPSTREAM u_luit-Set-up-terminal-before-fork.diff fdo#48638 -- Set up terminal before fork
Patch0: u_luit-Set-up-terminal-before-fork.diff
BuildRequires: pkg-config
BuildRequires: pkgconfig(fontenc)
BuildRequires: pkgconfig(x11)
@ -42,7 +40,6 @@ the locale's encoding.
%prep
%setup -q
%patch0 -p1
%build
%configure --with-localealiasfile=%{_datadir}/X11/locale/locale.alias

View File

@ -1,49 +0,0 @@
From 6b1da100f2984701f181f5d2635ffcff06db9be1 Mon Sep 17 00:00:00 2001
From: Mike Fabian <mike.fabian@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 <eich@freedesktop.org>
---
luit.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
Index: luit-20130217/luit.c
===================================================================
--- luit-20130217.orig/luit.c
+++ luit-20130217/luit.c
@@ -776,6 +776,8 @@ condom(int argc, char **argv)
IGNORE_RC(pipe(c2p_waitpipe));
}
+ setup_io(pty);
+
TRACE(("...forking to run %s(%s)\n", path, child_argv[0]));
pid = fork();
if (pid < 0) {
@@ -784,6 +786,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);
@@ -865,7 +871,6 @@ parent(int pid GCC_UNUSED, int pty)
if (verbose) {
reportIso2022("Output", outputState);
}
- setup_io(pty);
if (pipe_option) {
write_waitpipe(p2c_waitpipe);