[fpc-devel]promised tthread patch
peter at freepascal.org
Tue Nov 18 11:17:48 CET 2003
> [ Charset ISO-8859-1 unsupported, converting... ]
>> > .... under FreeBSD it fails. Probably due to the pipe trick
>> > I'm still investigating.
>> Weird, the pipe trick should be very portable, unless there are signals
>> Try changing the
>> fpread(...) to
>> // pseudo code:
>> if fpread(...) = -1 then
>> not_signalled := errno = EINTR;
>> not_signalled := true;
>> until not_signalled;
>> and hope the loop doesn't get tight. but fpread should block in any case
> It's the assumptio that fpread returns EINTR. That is a a linuxism I
> It returns ESysEAGAIN.
> I'm currently patching all these occurances when pipe related.
EAGAIN is only used for Non-blocking IO. The provided EINTR loop is
correct for Linux,Solaris,Tru64 and UnixWare.
More information about the fpc-devel