From fb7a50fbb9d4728909382ba7f9eb65f2c0ab2d79 Mon Sep 17 00:00:00 2001 From: "Gregory P. Smith" Date: Mon, 14 Jul 2008 06:06:48 +0000 Subject: [PATCH] Fix posix.fork1() / os.fork1() to only call PyOS_AfterFork() in the child process rather than both parent and child. Does anyone actually use fork1()? It appears to be a Solaris thing but if Python is built with pthreads on Solaris, fork1() and fork() should be the same. --- Modules/posixmodule.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 8f32fd4349..d8c81b6a58 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -3597,7 +3597,8 @@ posix_fork1(PyObject *self, PyObject *noargs) pid_t pid = fork1(); if (pid == -1) return posix_error(); - PyOS_AfterFork(); + if (pid == 0) + PyOS_AfterFork(); return PyInt_FromLong(pid); } #endif -- 2.50.1