On 2/13/2017 1:00 PM, Johannes Sixt wrote:
Please type this, preferably outside of any repo to avoid that it is changed; note the command typo:

   git -c help.autocorrect=40 ceckout

Git waits for 4 seconds, but does not write anything until just before it exits. It bisects to

a9b8a09c3c30886c79133da9f48ef9f98c21c3b2 is the first bad commit
commit a9b8a09c3c30886c79133da9f48ef9f98c21c3b2
Author: Jeff Hostetler <jeffh...@microsoft.com>
Date:   Thu Dec 22 18:09:23 2016 +0100

    mingw: replace isatty() hack

    Git for Windows has carried a patch that depended on internals
    of MSVC runtime, but it does not work correctly with recent MSVC
    runtime. A replacement was written originally for compiling
    with VC++. The patch in this message is a backport of that
    replacement, and it also fixes the previous attempt to make
    isatty() tell that /dev/null is *not* an interactive terminal.

    Signed-off-by: Jeff Hostetler <jeffh...@microsoft.com>
    Tested-by: Beat Bolli <dev+...@drbeat.li>
    Signed-off-by: Johannes Schindelin <johannes.schinde...@gmx.de>
    Signed-off-by: Junio C Hamano <gits...@pobox.com>

:040000 040000 bc3c75bdfc766fe478e160a9452c31bfef50b505 f7183c3a0726fef7161d5f9ff8c997260025f1bb M compat

Any ideas? I haven't had time to dig any further.

I'm investigating now.

The warning text is being written to stderr and then main thread sleeps for the 4 seconds. However, stderr has been redirected to the pipe connected to the console_thread that handles the coloring/pager. It is in a blocking ReadFile on the pipe and is thus stuck until the main thread runs the corrected command and closes the pipe. It then sees the EOF
and prints everything in the pipe buffer.

I'll look into fixing this now.

Jeff


Reply via email to