]> arthur.barton.de Git - bup.git/commitdiff
main: fix problem when redirecting to newliner on MacOS X.
authorAvery Pennarun <apenwarr@gmail.com>
Thu, 4 Mar 2010 03:34:40 +0000 (22:34 -0500)
committerAvery Pennarun <apenwarr@gmail.com>
Thu, 4 Mar 2010 03:34:40 +0000 (22:34 -0500)
It's probably just a bug in python 2.4.2, which is the version on my old
MacOS machine.  But it seems that if you use subprocess.Popen with stdout=1
and/or stderr=2, it ends up closing the file descriptors instead of passing
them along.  Since those are the defaults anyway, just use None instead.

main.py

diff --git a/main.py b/main.py
index 3dcff697faf231d5079627298a84c05d22978ff5..4d8ea1f3547260dd293590de64ae4317eadff301 100755 (executable)
--- a/main.py
+++ b/main.py
@@ -99,12 +99,12 @@ if fix_stdout or fix_stderr:
     n = subprocess.Popen([subpath('newliner')],
                          stdin=subprocess.PIPE, stdout=os.dup(realf),
                          close_fds=True, preexec_fn=force_tty)
-    outf = fix_stdout and n.stdin.fileno() or 1
-    errf = fix_stderr and n.stdin.fileno() or 2
+    outf = fix_stdout and n.stdin.fileno() or None
+    errf = fix_stderr and n.stdin.fileno() or None
 else:
     n = None
-    outf = 1
-    errf = 2
+    outf = None
+    errf = None
 
 
 class SigException(Exception):