summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoritohy <itohy@pkgsrc.org>2000-01-19 07:24:07 +0000
committeritohy <itohy@pkgsrc.org>2000-01-19 07:24:07 +0000
commit85439348bd177f8cbaf557309257e97be90e290c (patch)
treed1f6e79fce7473e25b6ea07c56202ac5b2911be0
parentd47d7aca9af939d4249a7aef03c8829a095f8078 (diff)
downloadpkgsrc-85439348bd177f8cbaf557309257e97be90e290c.tar.gz
Recognize children even if feel innocent of.
-rw-r--r--x11/uwm/files/patch-sum5
-rw-r--r--x11/uwm/patches/patch-ab67
-rw-r--r--x11/uwm/patches/patch-aj29
3 files changed, 87 insertions, 14 deletions
diff --git a/x11/uwm/files/patch-sum b/x11/uwm/files/patch-sum
index dbb761f93a8..a46ec56e560 100644
--- a/x11/uwm/files/patch-sum
+++ b/x11/uwm/files/patch-sum
@@ -1,7 +1,7 @@
-$NetBSD: patch-sum,v 1.3 1999/12/23 23:12:49 itohy Exp $
+$NetBSD: patch-sum,v 1.4 2000/01/19 07:24:07 itohy Exp $
MD5 (patch-aa) = 6ebca0c68ccc36ead286d15f64558a0d
-MD5 (patch-ab) = 6a67513fc13f59fe24a8cb93c311dab6
+MD5 (patch-ab) = b7559a13c915e4fee232047920f43039
MD5 (patch-ac) = cd52d12bed44d357df4ccb070d2df0e9
MD5 (patch-ad) = 294879be399f00a841898f7527cc753a
MD5 (patch-ae) = 7bbaae6465a104ed063ef8fee1f7cf49
@@ -9,3 +9,4 @@ MD5 (patch-af) = 8d2bb3cf85676e259186241611edf4e4
MD5 (patch-ag) = d8b35baf6f18314b657cab4076cd4a16
MD5 (patch-ah) = cce76d53168d7de5f0350bc0409026bc
MD5 (patch-ai) = d2ae89b2ee16602f37f664a9d2229e04
+MD5 (patch-aj) = 9d504c36798865c6dc7d439f9adde274
diff --git a/x11/uwm/patches/patch-ab b/x11/uwm/patches/patch-ab
index 1fb420745c2..5012872dcf4 100644
--- a/x11/uwm/patches/patch-ab
+++ b/x11/uwm/patches/patch-ab
@@ -1,11 +1,13 @@
-$NetBSD: patch-ab,v 1.1.1.1 1999/12/23 03:10:59 itohy Exp $
+$NetBSD: patch-ab,v 1.2 2000/01/19 07:24:07 itohy Exp $
--- uwm.c.orig Sun Oct 23 22:21:55 1988
-+++ uwm.c Thu Dec 23 00:21:02 1999
-@@ -42,6 +42,15 @@
++++ uwm.c Wed Jan 19 08:20:54 2000
+@@ -41,9 +41,18 @@
+
#include "uwm.h"
#include <ctype.h>
-
++#include <signal.h>
++
+#ifdef CSRG_BASED
+#undef MIN
+#undef MAX
@@ -14,11 +16,52 @@ $NetBSD: patch-ab,v 1.1.1.1 1999/12/23 03:10:59 itohy Exp $
+#define HAVE_MKSTEMP
+#endif
+#endif
-+
+
#ifdef PROFIL
- #include <signal.h>
+-#include <signal.h>
/*
-@@ -369,7 +378,7 @@
+ * Dummy handler for profiling.
+ */
+@@ -53,6 +62,27 @@
+ }
+ #endif
+
++#ifdef SIGCHLD
++#include <sys/wait.h>
++/*
++ * clear (probably inherited) children which are dead or will die.
++ */
++clear_children()
++{
++ int status, pid;
++
++ do {
++#ifdef CSRG_BASED
++ pid = wait3(&status, WNOHANG, (struct rusage *) 0);
++#else /* SVR4 */
++ pid = waitpid(-1, &status, WNOHANG);
++#endif
++ } while (pid != 0 && pid != -1);
++
++ signal(SIGCHLD, clear_children);
++}
++#endif
++
+ #define gray_width 16
+ #define gray_height 16
+ static char gray_bits[] = {
+@@ -115,6 +145,10 @@
+ #ifdef PROFIL
+ signal(SIGTERM, ptrap);
+ #endif
++#ifdef SIGCHLD
++ /* no zombies */
++ clear_children();
++#endif
+
+ /*
+ * Set up internal defaults.
+@@ -369,7 +403,7 @@
if (IFontInfo == NULL) {
fprintf(stderr, "uwm: Unable to open icon font '%s', using server default.\n",
IFontName);
@@ -27,7 +70,7 @@ $NetBSD: patch-ab,v 1.1.1.1 1999/12/23 03:10:59 itohy Exp $
fallbackIFont = True;
}
PFontInfo = XLoadQueryFont(dpy, PFontName);
-@@ -379,7 +388,7 @@
+@@ -379,7 +413,7 @@
if (fallbackIFont)
PFontInfo = IFontInfo;
else
@@ -36,7 +79,7 @@ $NetBSD: patch-ab,v 1.1.1.1 1999/12/23 03:10:59 itohy Exp $
fallbackPFont = True;
}
MFontInfo = XLoadQueryFont(dpy, MFontName);
-@@ -389,7 +398,7 @@
+@@ -389,7 +423,7 @@
if (fallbackIFont || fallbackPFont)
MFontInfo = fallbackPFont ? PFontInfo : IFontInfo;
else
@@ -45,7 +88,7 @@ $NetBSD: patch-ab,v 1.1.1.1 1999/12/23 03:10:59 itohy Exp $
fallbackMFont = True;
}
-@@ -685,7 +694,11 @@
+@@ -685,7 +719,11 @@
*/
InitBindings()
{
@@ -57,7 +100,7 @@ $NetBSD: patch-ab,v 1.1.1.1 1999/12/23 03:10:59 itohy Exp $
char *tempfile; /* Temporary filename. */
register FILE *fp; /* Temporary file pointer. */
register char **ptr; /* Default bindings string array pointer. */
-@@ -699,15 +712,26 @@
+@@ -699,15 +737,26 @@
exit (1);
}
strcpy (tempfile, TEMPFILE);
@@ -84,7 +127,7 @@ $NetBSD: patch-ab,v 1.1.1.1 1999/12/23 03:10:59 itohy Exp $
fclose(fp);
/*
-@@ -717,6 +741,7 @@
+@@ -717,6 +766,7 @@
perror("uwm: cannot open temp file");
exit(1);
}
diff --git a/x11/uwm/patches/patch-aj b/x11/uwm/patches/patch-aj
new file mode 100644
index 00000000000..134116a2cd6
--- /dev/null
+++ b/x11/uwm/patches/patch-aj
@@ -0,0 +1,29 @@
+$NetBSD: patch-aj,v 1.1 2000/01/19 07:24:07 itohy Exp $
+
+--- Menu.c.orig Sat Oct 1 18:41:13 1988
++++ Menu.c Mon Jan 17 22:09:10 2000
+@@ -84,6 +84,14 @@
+ char **oldenviron;
+ extern char **environ, **newenviron;
+
++#ifdef SIGCHLD
++ /*
++ * Children are now handled in uvm.c, but make sure
++ * uwm blocks :-) for compatibility with other systems.
++ */
++
++ signal(SIGCHLD, SIG_DFL);
++#endif
+ oldenviron = environ;
+ environ = newenviron;
+ if ((pid = vfork()) == 0) {
+@@ -107,6 +115,9 @@
+ status = -1;
+ signal(SIGINT, istat);
+ signal(SIGQUIT, qstat);
++#ifdef SIGCHLD
++ clear_children();
++#endif
+ return(status);
+ }
+