Output buffering on Windows 10

Sune Foldager sune.foldager at me.com
Thu Jun 14 15:09:25 EDT 2018


On 14 Jun 2018, at 17.08, Simon Farnsworth <simonfar at fb.com> wrote:

> For context, my change to reopen stdout was done so that pager wouldn't replace an instrumented stdout with a fresh one that lacked instrumentation.

That makes sense, I figured it was something like that but didn’t look into your further changesets.

> The idea was that we want line buffered or unbuffered output to anything that writes to a TTY eventually, whether it's a pager or direct to a terminal; fully buffered output is only appropriate when writing to a pipe or to disk.
> 
> I think that the right fix is to ask for line buffered for POSIX and unbuffered for Windows if the original stdout is a TTY.

Yes, I wasn’t sure whether we would prefer unbuffered over fully buffered for the pager on Windows. If unbuffered is what we want (now that line buffered isn’t available), I can make a fix for that and post it tomorrow.

Thanks.

— 
Sune



More information about the Mercurial-devel mailing list