# HG changeset patch # User Mads Kiilerich # Date 1235758238 -3600 # Node ID 076401cf2b63664f3c63ce297243544ea2a77e92 # Parent 18048153fd4ef3224923a271a87bf0ab85c85866 run-tests.py: avoid using popen2.Popen4 - use subprocess instead Use subprocess to emulate Popen4 if available - similar to how it is done in util.py. Using popen2 under python 2.6 gives DeprecationWarning: The popen2 module is deprecated. Use the subprocess module. diff -r 18048153fd4e -r 076401cf2b63 tests/run-tests.py --- a/tests/run-tests.py Fri Feb 27 17:52:31 2009 +0100 +++ b/tests/run-tests.py Fri Feb 27 19:10:38 2009 +0100 @@ -11,7 +11,22 @@ import errno import optparse import os -import popen2 +try: + import subprocess + subprocess.Popen # trigger ImportError early + closefds = os.name == 'posix' + def Popen4(cmd, bufsize=-1): + p = subprocess.Popen(cmd, shell=True, bufsize=bufsize, + close_fds=closefds, + stdin=subprocess.PIPE, stdout=subprocess.PIPE, + stderr=subprocess.STDOUT) + p.fromchild = p.stdout + p.tochild = p.stdin + p.childerr = p.stderr + return p +except ImportError: + subprocess = None + from popen2 import Popen4 import shutil import signal import sys @@ -281,7 +296,7 @@ if ret == None: ret = 0 else: - proc = popen2.Popen4(cmd) + proc = Popen4(cmd) try: output = '' proc.tochild.close()