Only supply popen2, popen3 when fork exists.

(This avoids defining non-working versions of these on the Mac.)
This commit is contained in:
Guido van Rossum 2000-09-19 03:04:52 +00:00
parent 9e8181b809
commit d9a8e96543
1 changed files with 14 additions and 12 deletions

View File

@ -454,16 +454,18 @@ otherwise return -SIG, where SIG is the signal that killed it. """
return spawnvpe(mode, file, args[:-1], env)
if not _exists("popen2"):
def popen2(cmd, mode="t", bufsize=-1):
assert mode[:1] in ("b", "t")
import popen2
stdout, stdin = popen2.popen2(cmd, bufsize)
return stdin, stdout
# Supply popen2 etc. (for Unix)
if _exists("fork"):
if not _exists("popen2"):
def popen2(cmd, mode="t", bufsize=-1):
assert mode[:1] in ("b", "t")
import popen2
stdout, stdin = popen2.popen2(cmd, bufsize)
return stdin, stdout
if not _exists("popen3"):
def popen3(cmd, mode="t", bufsize=-1):
assert mode[:1] in ("b", "t")
import popen2
stdout, stdin, stderr = popen2.popen3(cmd, bufsize)
return stdin, stdout, stderr
if not _exists("popen3"):
def popen3(cmd, mode="t", bufsize=-1):
assert mode[:1] in ("b", "t")
import popen2
stdout, stdin, stderr = popen2.popen3(cmd, bufsize)
return stdin, stdout, stderr