summaryrefslogtreecommitdiff
path: root/shells
diff options
context:
space:
mode:
authorKris Kennaway <kris@FreeBSD.org>2002-06-16 09:03:53 +0000
committerKris Kennaway <kris@FreeBSD.org>2002-06-16 09:03:53 +0000
commit1c26f5eca3ddbdc1ebc946456733f093001ac36d (patch)
tree1c36cc1a02eb76dae7282ade67ab015f80a5000a /shells
parentFix build on current. (diff)
Fix build on -current.
Submitted by: mike
Diffstat (limited to 'shells')
-rw-r--r--shells/44bsd-csh/files/patch-proc.c50
1 files changed, 50 insertions, 0 deletions
diff --git a/shells/44bsd-csh/files/patch-proc.c b/shells/44bsd-csh/files/patch-proc.c
new file mode 100644
index 000000000000..d938524ed34f
--- /dev/null
+++ b/shells/44bsd-csh/files/patch-proc.c
@@ -0,0 +1,50 @@
+$FreeBSD$
+
+--- proc.c Tue Jun 4 20:07:29 2002
++++ proc.c Tue Jun 4 20:14:09 2002
+@@ -89,13 +89,13 @@
+ int pid;
+ extern int insource;
+ int save_errno = errno;
+- union wait w;
++ int w;
+ int jobflags;
+ struct rusage ru;
+
+ loop:
+ errno = 0; /* reset, just in case */
+- pid = wait3(&w.w_status,
++ pid = wait3(&w,
+ (setintr && (intty || insource) ? WNOHANG | WUNTRACED : WNOHANG), &ru);
+
+ if (pid <= 0) {
+@@ -117,7 +117,7 @@
+ pp->p_flags &= ~(PRUNNING | PSTOPPED | PREPORTED);
+ if (WIFSTOPPED(w)) {
+ pp->p_flags |= PSTOPPED;
+- pp->p_reason = w.w_stopsig;
++ pp->p_reason = WSTOPSIG(w);
+ }
+ else {
+ if (pp->p_flags & (PTIME | PPTIME) || adrof(STRtime))
+@@ -125,16 +125,16 @@
+
+ pp->p_rusage = ru;
+ if (WIFSIGNALED(w)) {
+- if (w.w_termsig == SIGINT)
++ if (WTERMSIG(w) == SIGINT)
+ pp->p_flags |= PINTERRUPTED;
+ else
+ pp->p_flags |= PSIGNALED;
+- if (w.w_coredump)
++ if (WCOREDUMP(w))
+ pp->p_flags |= PDUMPED;
+- pp->p_reason = w.w_termsig;
++ pp->p_reason = WTERMSIG(w);
+ }
+ else {
+- pp->p_reason = w.w_retcode;
++ pp->p_reason = WEXITSTATUS(w);
+ if (pp->p_reason != 0)
+ pp->p_flags |= PAEXITED;
+ else