Hi kusma, On Thu, 23 Feb 2012, Erik Faye-Lund wrote: > On Thu, Feb 23, 2012 at 10:26 PM, Johannes Schindelin > <Johannes.Schindelin@xxxxxx> wrote: > > > > On Thu, 23 Feb 2012, Erik Faye-Lund wrote: > > > >> Our stat implementation for Windows always sets st_ino to 0. This > >> means that checking if isatty(0) and comparing the reported inodes > >> of stdout and stdin is not sufficient to detect that both are > >> pointing to the same TTY. > >> > >> Luckily, there's only one console on Windows, so adding a check for > >> isatty(1) should do the trick. For platforms where inodes are > >> reported correctly, this should still be correct. > > > > Sorry to ask so stupidly, but why does isatty(1) work and isatty(0) does > > not? Should they not access the very same console object? > > > > The point is that they might not. The old test would draw the wrong > conclusion if isatty(0) was true, but isatty(1) was not because it > used st_ino to verify that stdin and stdout pointed to the same > terminal. The reason it did that was to catch cases where stdin and > stdout pointed to different terminals, AFAICT. Not checking isatty(1) > was simply an optimization, which works when st_ino is filled out > correctly. > > On Windows there is only one terminal, so it's sufficient to check if > both are connected. Ah, okay. Thanks for answering so patiently! ACK. Ciao, Dscho -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html