summaryrefslogtreecommitdiff
path: root/wm
diff options
context:
space:
mode:
authorfvdl <fvdl>2001-06-28 14:20:17 +0000
committerfvdl <fvdl>2001-06-28 14:20:17 +0000
commite7e4f96ccc617523829711c1f14c9faed4d29c2b (patch)
tree7bd6f0cab3acffe26520fc50a93d5b784e6ae618 /wm
parent1c0f5440bc816454eff2d6b7874afe2c929e1d7e (diff)
downloadpkgsrc-e7e4f96ccc617523829711c1f14c9faed4d29c2b.tar.gz
Reset SIGPIPE handler to default (from SIG_IGN) before execing anything,
otherwise all children (xterms, etc) will end up ignoring SIGPIPE.
Diffstat (limited to 'wm')
-rw-r--r--wm/windowmaker/patches/patch-ad25
1 files changed, 25 insertions, 0 deletions
diff --git a/wm/windowmaker/patches/patch-ad b/wm/windowmaker/patches/patch-ad
new file mode 100644
index 00000000000..deb99fed6aa
--- /dev/null
+++ b/wm/windowmaker/patches/patch-ad
@@ -0,0 +1,25 @@
+$NetBSD: patch-ad,v 1.3 2001/06/28 14:20:17 fvdl Exp $
+
+--- main.c.orig Wed Apr 11 02:14:42 2001
++++ main.c Thu Jun 28 19:01:47 2001
+@@ -28,6 +28,7 @@
+ #include <sys/stat.h>
+ #include <sys/types.h>
+ #include <fcntl.h>
++#include <signal.h>
+
+ #include <X11/Xlib.h>
+ #include <X11/Xutil.h>
+@@ -218,6 +219,12 @@
+ {
+ char *tmp, *ptr;
+ char buf[16];
++ struct sigaction sa;
++
++ sa.sa_handler = SIG_DFL;
++ sigemptyset(&sa.sa_mask);
++ sa.sa_mask = 0;
++ sigaction(SIGPIPE, &sa, NULL);
+
+ if (multiHead) {
+ tmp = wmalloc(strlen(DisplayName)+64);