From b461145b7949d2cb4eab79d0f1955ddd4ce23dbb Mon Sep 17 00:00:00 2001
From: vjpai <vpai@google.com>
Date: Wed, 8 Jul 2015 09:53:46 -0700
Subject: [PATCH] Stop sending terminal escape sequences if we're redirecting
 output to a file.

---
 tools/run_tests/jobset.py | 25 ++++++++++++++++---------
 1 file changed, 16 insertions(+), 9 deletions(-)

diff --git a/tools/run_tests/jobset.py b/tools/run_tests/jobset.py
index 8694b8f6bd..e262d00bb6 100755
--- a/tools/run_tests/jobset.py
+++ b/tools/run_tests/jobset.py
@@ -101,15 +101,22 @@ def message(tag, msg, explanatory_text=None, do_newline=False):
     print '%s: %s' % (tag, msg)
     return
   try:
-    sys.stdout.write('%s%s%s\x1b[%d;%dm%s\x1b[0m: %s%s' % (
-        _BEGINNING_OF_LINE,
-        _CLEAR_LINE,
-        '\n%s' % explanatory_text if explanatory_text is not None else '',
-        _COLORS[_TAG_COLOR[tag]][1],
-        _COLORS[_TAG_COLOR[tag]][0],
-        tag,
-        msg,
-        '\n' if do_newline or explanatory_text is not None else ''))
+    if sys.stdout.isatty():
+        sys.stdout.write('%s%s%s\x1b[%d;%dm%s\x1b[0m: %s%s' % (
+            _BEGINNING_OF_LINE,
+            _CLEAR_LINE,
+            '\n%s' % explanatory_text if explanatory_text is not None else '',
+            _COLORS[_TAG_COLOR[tag]][1],
+            _COLORS[_TAG_COLOR[tag]][0],
+            tag,
+            msg,
+            '\n' if do_newline or explanatory_text is not None else ''))
+    else:
+        sys.stdout.write('%s%s: %s%s' % (
+            '\n%s' % explanatory_text if explanatory_text is not None else '',
+            tag,
+            msg,
+            '\n'))
     sys.stdout.flush()
   except:
     pass
-- 
GitLab