On Tue, 21 Jun 2011, Lionel Drevon wrote:
Hello everybody,
since i migrate to a 64bits hardware, i have compiled a old source with the
last fpc 64 bits under linux.
(due to an old 32 bits compiled software using in a 32 bits hardware, which
have the same beahaviour...)
I'have got some times an error during an fpwrite to a socket. (so it's happen
some times...never when i test it with a telnet and it occurs 10% of
connexion...)
The return shell error is 141 so it's seem to be for a broken socket.
How can freepascal handle this kind of problem?
it appends just after this instruction=
nb_emis:=fpwrite(client[i].csock,pp,serveur[i].buff_avail-serveur[i].buff_written);
Do you check that nb_emis is >= 0 ?
Do i need to use the fpsetsockopt for the MSG_OOB+MSG_NOSIGNAL ?
This is always a good idea, especially MSG_NOSIGNAL. If the other end breaks
the connection, you'll get a SIGPIPE signal, and the standard RTL does not
catch that signal, so you must catch it yourself.
Michael.
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal