diff options
author | Nat Goodspeed <nat@lindenlab.com> | 2010-06-21 14:43:36 -0400 |
---|---|---|
committer | Nat Goodspeed <nat@lindenlab.com> | 2010-06-21 14:43:36 -0400 |
commit | 9fe55d340feb3b761fa15be9b7c5efb7d5f4c51f (patch) | |
tree | bda7dd44eb8bb02e009620b8e3fc79db9a524efa /indra/lib | |
parent | 17f98b36d3e3bebdcb331f91fc0f542f618be71d (diff) | |
parent | f17623d8c67a10c2d7547e40ac8442c703d107ed (diff) |
Automated merge with ssh://hg.lindenlab.com/q/viewer-release/
Diffstat (limited to 'indra/lib')
-rw-r--r-- | indra/lib/python/indra/util/llmanifest.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/indra/lib/python/indra/util/llmanifest.py b/indra/lib/python/indra/util/llmanifest.py index 7e5b86c53f..c33a03034a 100644 --- a/indra/lib/python/indra/util/llmanifest.py +++ b/indra/lib/python/indra/util/llmanifest.py @@ -39,6 +39,7 @@ import shutil import sys import tarfile import errno +import subprocess def path_ancestors(path): drive, path = os.path.splitdrive(os.path.normpath(path)) @@ -366,20 +367,23 @@ class LLManifest(object): def run_command(self, command): """ Runs an external command, and returns the output. Raises - an exception if the command reurns a nonzero status code. For - debugging/informational purpoases, prints out the command's + an exception if the command returns a nonzero status code. For + debugging/informational purposes, prints out the command's output as it is received.""" print "Running command:", command - fd = os.popen(command, 'r') + sys.stdout.flush() + child = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, + shell=True) lines = [] while True: - lines.append(fd.readline()) + lines.append(child.stdout.readline()) if lines[-1] == '': break else: print lines[-1], output = ''.join(lines) - status = fd.close() + child.stdout.close() + status = child.wait() if status: raise RuntimeError( "Command %s returned non-zero status (%s) \noutput:\n%s" |