Mercurial > public > mercurial-scm > hg-stable
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) |