diff options
author | peter <peter@FreeBSD.org> | 1999-07-03 20:58:44 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 1999-07-03 20:58:44 +0000 |
commit | b5f8a8174d075dc315000a960639a1d450c5e604 (patch) | |
tree | efb7679a2e67976fcea8e385f0c983d3f6986026 /sys/kern/kern_fork.c | |
parent | e5f4c63f137412a3f0691e64764e14569e7980db (diff) | |
download | FreeBSD-src-b5f8a8174d075dc315000a960639a1d450c5e604.zip FreeBSD-src-b5f8a8174d075dc315000a960639a1d450c5e604.tar.gz |
Stop rfork(0) from panicing. (oops!!)
Submitted by: Peter Holm <peter@holm.cc>
Diffstat (limited to 'sys/kern/kern_fork.c')
-rw-r--r-- | sys/kern/kern_fork.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/kern/kern_fork.c b/sys/kern/kern_fork.c index 5ece79a..9c6a66a 100644 --- a/sys/kern/kern_fork.c +++ b/sys/kern/kern_fork.c @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_fork.c 8.6 (Berkeley) 4/8/94 - * $Id: kern_fork.c,v 1.61 1999/04/28 11:36:53 phk Exp $ + * $Id: kern_fork.c,v 1.62 1999/06/30 15:33:34 peter Exp $ */ #include "opt_ktrace.h" @@ -130,7 +130,7 @@ rfork(p, uap) error = fork1(p, uap->flags, &p2); if (error == 0) { - p->p_retval[0] = p2->p_pid; + p->p_retval[0] = p2 ? p2->p_pid : 0; p->p_retval[1] = 0; } return error; @@ -196,6 +196,7 @@ fork1(p1, flags, procp) p1->p_fd = newfd; } } + *procp = NULL; return (0); } |