Re: [PATCH 1/2] MSVC: Do not close stdout to prevent a crash

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Re: [PATCH 1/2] MSVC: Do not close stdout to prevent a crash

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:52:30

Andreas Schwab [off-list ref] writes:
Junio C Hamano [off-list ref] writes:
quoted
We have relied on fstat(-1, &st) to correctly error out, and if MSVC build
crashes, it is a bug in its fstat() emulation, I would think.
fileno(stdout) is alread wrong if stdout was closed.
The "-1" in my message comes from here:

    DESCRIPTION

    The fileno() function shall return the integer file descriptor
    associated with the stream pointed to by stream.

    RETURN VALUE

    Upon successful completion, fileno() shall return the integer value of
    the file descriptor associated with stream. Otherwise, the value -1
    shall be returned and errno set to indicate the error.

Re: [msysGit] Re: [PATCH 1/2] MSVC: Do not close stdout to prevent a crash

From: Johannes Sixt <hidden>
Date: 2016-06-15 22:52:30

Am 20.11.2011 04:27, schrieb Junio C Hamano:
Andreas Schwab [off-list ref] writes:
quoted
Junio C Hamano [off-list ref] writes:
quoted
We have relied on fstat(-1, &st) to correctly error out, and if MSVC build
crashes, it is a bug in its fstat() emulation, I would think.
fileno(stdout) is alread wrong if stdout was closed.
The "-1" in my message comes from here:

    DESCRIPTION

    The fileno() function shall return the integer file descriptor
    associated with the stream pointed to by stream.

    RETURN VALUE

    Upon successful completion, fileno() shall return the integer value of
    the file descriptor associated with stream. Otherwise, the value -1
    shall be returned and errno set to indicate the error.
But in the description of fclose() there is also:

  After the call to fclose(), any use of stream results in undefined
  behavior.

And we do call fclose(stdout) in cmd_format_patch.

-- Hannes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help