Fix for r78527. It left out updating forkpty.

This commit is contained in:
Gregory P. Smith 2010-03-01 02:31:33 +00:00
parent e6390a1503
commit 4b862365c8
1 changed files with 7 additions and 4 deletions

View File

@ -3762,15 +3762,18 @@ To both, return fd of newly opened pseudo-terminal.\n");
static PyObject *
posix_forkpty(PyObject *self, PyObject *noargs)
{
int master_fd = -1, result;
int master_fd = -1, result = 0;
pid_t pid;
_PyImport_AcquireLock();
pid = forkpty(&master_fd, NULL, NULL, NULL);
if (pid == 0)
if (pid == 0) {
/* child: this clobbers and resets the import lock. */
PyOS_AfterFork();
result = _PyImport_ReleaseLock();
} else {
/* parent: release the import lock. */
result = _PyImport_ReleaseLock();
}
if (pid == -1)
return posix_error();
if (result < 0) {