gnugo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gnugo-devel] question about GTP


From: aquarius
Subject: Re: [gnugo-devel] question about GTP
Date: Wed, 26 Nov 2003 18:16:05 +0100
User-agent: Opera7.22/Win32 M2 build 3221

Hallo Arend,

Am Wed, 26 Nov 2003 17:20:20 +0100 (CET) schrieb Arend Bayer <address@hidden>:


Hallo aqaurius,

wer Du auch immer bist: :-)

A happy Gnu Go user :-)

...
Thanks for reminding us about this issue. I have nothing against your
patch, but I'd like to understand the issue. On my linux system, the man page
for setvbuf says:

The setlinebuf function is exactly equivalent to the call:

              setvbuf(stream, (char *)NULL, _IOLBF, 0);

In the 2nd mail you cite above, you say that exactly this replacement
has been the problem.
setvbuf() is conforming to ANSI, while as setlinebuf() is not considered
portable.
Is MingW not ANSI-conformant in this respect?

Arend

I think it tries hard to be ... but there must be a bug in MingW's
buffering related code since *the*same*(unchanged)*Gnu*Go*binary*
works well inside cmd.exe or command.com but not inside rxvt.exe or
when connected with pipes. (One can easily try out Gnu Go's GTP-Mode
manually in a shell / cmd.exe / rxvt.exe to reproduce this error)
As I noted in my message msg00004.html:

The underlying reason seems to be that MingW/Msys's isatty() is
clueless sometimes about the nature of the communication partner.

So MingW seems to refuse to obey to the setvbuf statement sometimes.
(at runtime, not at compile time)
I will try to investigate that further tomorrow ... perhaps the MingW
folks already have come to a conclusion ... but (as i noted in msg00004)
I personally do not seem to have enough C knowledge to pin that one
down and to advice the MingW developers ... sorry :-(

Happy Go - ing,
 aquarius
--



reply via email to

[Prev in Thread] Current Thread [Next in Thread]