correct stderr output lost in runner.runtool
authorGui Chen <gui.chen@intel.com>
Fri, 16 Mar 2012 06:18:06 +0000 (14:18 +0800)
committerGui Chen <gui.chen@intel.com>
Fri, 16 Mar 2012 07:37:37 +0000 (15:37 +0800)
Signed-off-by: Gui Chen <gui.chen@intel.com>
mic/utils/runner.py

index 12fa930..9e0522a 100644 (file)
@@ -63,9 +63,9 @@ def runtool(cmdln_or_args, catch=1):
 
     try:
         p = Popen(cmdln_or_args, stdout=sout, stderr=serr, shell=shell)
-        out = p.communicate()[0]
-        if out is None:
-            out = ''
+        (sout, serr) = p.communicate()
+        # combine stdout and stderr, filter None out
+        out = ''.join(filter(None, [sout, serr]))
     except OSError, e:
         if e.errno == 2:
             # [Errno 2] No such file or directory