[PATCH 3 of 4] sshpeer: use the doublepipe object for the server to client channel

Pierre-Yves David pierre-yves.david at ens-lyon.org
Wed Jun 3 15:26:32 CDT 2015


# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at fb.com>
# Date 1432140108 18000
#      Wed May 20 11:41:48 2015 -0500
# Node ID 44b96431e75236a4124ba310ee45371594eb3511
# Parent  c27dfc2cf0a3bd00d5c6037d1cdb0960bbb50070
sshpeer: use the doublepipe object for the server to client channel

This restore real time output from ssh server while waiting for protocol data
sent by the server.

diff --git a/mercurial/sshpeer.py b/mercurial/sshpeer.py
--- a/mercurial/sshpeer.py
+++ b/mercurial/sshpeer.py
@@ -158,10 +158,11 @@ class sshpeer(wireproto.wirepeer):
         # move to threading.
         sub = util.popen4(cmd, bufsize=0)
         self.pipeo, self.pipei, self.pipee, self.subprocess = sub
 
         self.pipei = util.bufferedinputpipe(self.pipei)
+        self.pipei = doublepipe(self.ui, self.pipei, self.pipee)
 
         # skip any noise generated by remote shell
         self._callstream("hello")
         r = self._callstream("between", pairs=("%s-%s" % ("0"*40, "0"*40)))
         lines = ["", "dummy"]


More information about the Mercurial-devel mailing list