comparison mercurial/util.py @ 25245:504ef9c49f4a

util: allow to specify buffer size in popen4 We will need unbuffered IO to restore real time output with ssh peer. Changeset ec171737aaf1 seems to indicate playing with this value could be dangerous, but does not indicate why.
author Pierre-Yves David <pierre-yves.david@fb.com>
date Wed, 20 May 2015 11:29:45 -0500
parents 22f4ce49044d
children be930f16a52a
comparison
equal deleted inserted replaced
25244:cf90764f40a4 25245:504ef9c49f4a
245 245
246 def popen3(cmd, env=None, newlines=False): 246 def popen3(cmd, env=None, newlines=False):
247 stdin, stdout, stderr, p = popen4(cmd, env, newlines) 247 stdin, stdout, stderr, p = popen4(cmd, env, newlines)
248 return stdin, stdout, stderr 248 return stdin, stdout, stderr
249 249
250 def popen4(cmd, env=None, newlines=False): 250 def popen4(cmd, env=None, newlines=False, bufsize=-1):
251 p = subprocess.Popen(cmd, shell=True, bufsize=-1, 251 p = subprocess.Popen(cmd, shell=True, bufsize=bufsize,
252 close_fds=closefds, 252 close_fds=closefds,
253 stdin=subprocess.PIPE, stdout=subprocess.PIPE, 253 stdin=subprocess.PIPE, stdout=subprocess.PIPE,
254 stderr=subprocess.PIPE, 254 stderr=subprocess.PIPE,
255 universal_newlines=newlines, 255 universal_newlines=newlines,
256 env=env) 256 env=env)