[PATCH] make ui.interactive() return false in case stdin lacks isatty

Ronny Pfannschmidt Ronny.Pfannschmidt at gmx.de
Sun Dec 13 11:29:32 CST 2009


# HG changeset patch
# User Ronny Pfannschmidt <Ronny.Pfannschmidt at gmx.de>
# Date 1260725356 -3600
# Node ID dc34dc1c0881d9d8ba7566408c5a4018a9a2fd06
# Parent  9e2ab10728a2f68f243d1df624f715028944ac7c
make ui.interactive() return false in case stdin lacks isatty

diff --git a/mercurial/ui.py b/mercurial/ui.py
--- a/mercurial/ui.py
+++ b/mercurial/ui.py
@@ -253,7 +253,13 @@ class ui(object):
     def interactive(self):
         i = self.configbool("ui", "interactive", None)
         if i is None:
-            return sys.stdin.isatty()
+            try:
+                return sys.stdin.isatty()
+            except AttributeError:
+                # some environments replace stdin without implementing isatty
+                # usually those are non-interactive
+                return False
+
         return i
 
     def _readline(self, prompt=''):


More information about the Mercurial-devel mailing list