# HG changeset patch # User Brodie Rao # Date 1294061074 -39600 # Node ID 994510694b1d12f121dce2e5a585abaf13514259 # Parent 2420cb1ea1d6d7f46739eead1e3d7f9c399120a4 pager: don't page stderr if it's being redirected (issue2541) diff -r 2420cb1ea1d6 -r 994510694b1d hgext/pager.py --- a/hgext/pager.py Fri Mar 11 11:14:21 2011 +0100 +++ b/hgext/pager.py Tue Jan 04 00:24:34 2011 +1100 @@ -59,14 +59,17 @@ def _runpager(p): if not hasattr(os, 'fork'): - sys.stderr = sys.stdout = util.popen(p, 'wb') + sys.stdout = util.popen(p, 'wb') + if sys.stderr.isatty(): + sys.stderr = sys.stdout return fdin, fdout = os.pipe() pid = os.fork() if pid == 0: os.close(fdin) os.dup2(fdout, sys.stdout.fileno()) - os.dup2(fdout, sys.stderr.fileno()) + if sys.stderr.isatty(): + os.dup2(fdout, sys.stderr.fileno()) os.close(fdout) return os.dup2(fdin, sys.stdin.fileno())