mercurial/commandserver.py
changeset 37119 d4a2e0d5d042
parent 36940 b0ffcb540357
child 37120 a8a902d7176e
equal deleted inserted replaced
37118:5be286db5fb5 37119:d4a2e0d5d042
    26 from . import (
    26 from . import (
    27     encoding,
    27     encoding,
    28     error,
    28     error,
    29     pycompat,
    29     pycompat,
    30     util,
    30     util,
       
    31 )
       
    32 from .utils import (
       
    33     procutil,
    31 )
    34 )
    32 
    35 
    33 logfile = None
    36 logfile = None
    34 
    37 
    35 def log(*args):
    38 def log(*args):
   306 def _protectio(ui):
   309 def _protectio(ui):
   307     """ duplicates streams and redirect original to null if ui uses stdio """
   310     """ duplicates streams and redirect original to null if ui uses stdio """
   308     ui.flush()
   311     ui.flush()
   309     newfiles = []
   312     newfiles = []
   310     nullfd = os.open(os.devnull, os.O_RDWR)
   313     nullfd = os.open(os.devnull, os.O_RDWR)
   311     for f, sysf, mode in [(ui.fin, util.stdin, r'rb'),
   314     for f, sysf, mode in [(ui.fin, procutil.stdin, r'rb'),
   312                           (ui.fout, util.stdout, r'wb')]:
   315                           (ui.fout, procutil.stdout, r'wb')]:
   313         if f is sysf:
   316         if f is sysf:
   314             newfd = os.dup(f.fileno())
   317             newfd = os.dup(f.fileno())
   315             os.dup2(nullfd, f.fileno())
   318             os.dup2(nullfd, f.fileno())
   316             f = os.fdopen(newfd, mode)
   319             f = os.fdopen(newfd, mode)
   317         newfiles.append(f)
   320         newfiles.append(f)