win32: assign winstdout to sys.__stdout__ as well (issue2888) stable
authorIdan Kamara <idankk86@gmail.com>
Sat, 16 Jul 2011 15:24:28 +0300
branchstable
changeset 14892 d2d592718e90
parent 14889 a59058fd074a
child 14896 1a841d2b4bb1
child 14897 b9daa5b7a3af
win32: assign winstdout to sys.__stdout__ as well (issue2888) On Windows sys.stdout was being replaced with winstdout, which caused util.system() to redirect its output (due to 406b6d7bdcb9). That causes interactive tools (such as vim) to stop working.
mercurial/windows.py
--- a/mercurial/windows.py	Sat Jul 09 19:06:59 2011 +0300
+++ b/mercurial/windows.py	Sat Jul 16 15:24:28 2011 +0300
@@ -62,7 +62,7 @@
             self.close()
             raise IOError(errno.EPIPE, 'Broken pipe')
 
-sys.stdout = winstdout(sys.stdout)
+sys.__stdout__ = sys.stdout = winstdout(sys.stdout)
 
 def _is_win_9x():
     '''return true if run on windows 95, 98 or me.'''