aboutsummaryrefslogtreecommitdiffstats
path: root/testing/redo/skip-when-tty-missing.patch
diff options
context:
space:
mode:
Diffstat (limited to 'testing/redo/skip-when-tty-missing.patch')
-rw-r--r--testing/redo/skip-when-tty-missing.patch20
1 files changed, 20 insertions, 0 deletions
diff --git a/testing/redo/skip-when-tty-missing.patch b/testing/redo/skip-when-tty-missing.patch
new file mode 100644
index 0000000000..8acefbacd9
--- /dev/null
+++ b/testing/redo/skip-when-tty-missing.patch
@@ -0,0 +1,20 @@
+diff --git a/redo/builder.py b/redo/builder.py.new
+index e55955f7f9..160cba8dfe 100644
+--- a/redo/builder.py
++++ b/redo/builder.py.new
+@@ -1,5 +1,5 @@
+ """Code for parallel-building a set of targets, if needed."""
+-import errno, os, stat, signal, sys, tempfile, time
++import errno, os, os.path, stat, signal, sys, tempfile, time
+ from . import cycles, env, jobserver, logs, state, paths
+ from .helpers import unlink, close_on_exec
+ from .logs import debug2, err, warn, meta
+@@ -99,6 +99,8 @@ def await_log_reader():
+ if not env.v.LOG:
+ return
+ if log_reader_pid > 0:
++ if not os.path.exists('/dev/tty'):
++ return
+ # never actually close fd#1 or fd#2; insanity awaits.
+ # replace it with something else instead.
+ # Since our stdout/stderr are attached to redo-log's stdin,