summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/os.py28
1 files changed, 15 insertions, 13 deletions
diff --git a/Lib/os.py b/Lib/os.py
index c804c3a..70af0a9 100644
--- a/Lib/os.py
+++ b/Lib/os.py
@@ -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
-
-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
+# 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