Fix so that after a fork() -- on Unix only -- the template gets

recalculated.
This commit is contained in:
Guido van Rossum 1998-10-14 20:27:05 +00:00
parent d3a6a14330
commit b0e5718643
1 changed files with 9 additions and 3 deletions

View File

@ -60,11 +60,17 @@ def gettempdir():
# Function to calculate a prefix of the filename to use
_pid = None
def gettempprefix():
global template
if template == None:
global template, _pid
if os.name == 'posix' and _pid and _pid != os.getpid():
# Our pid changed; we must have forked -- zap the template
template = None
if template is None:
if os.name == 'posix':
template = '@' + `os.getpid()` + '.'
_pid = os.getpid()
template = '@' + `_pid` + '.'
elif os.name == 'nt':
template = '~' + `os.getpid()` + '-'
elif os.name == 'mac':