mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-07 20:46:06 +02:00
* handle EsockEINTR for fpaccept and fpconnect
git-svn-id: trunk@12939 -
This commit is contained in:
parent
9f3adee38e
commit
b5494c534c
@ -169,13 +169,20 @@ Var AddrLen : Longint;
|
|||||||
|
|
||||||
begin
|
begin
|
||||||
AddrLEn:=SizeOf(Addr);
|
AddrLEn:=SizeOf(Addr);
|
||||||
DoAccept:=fpaccept(Sock,@Addr,@AddrLen);
|
repeat
|
||||||
|
DoAccept:=fpaccept(Sock,@Addr,@AddrLen);
|
||||||
|
until (DoAccept<>-1) or (SocketError <> EsockEINTR);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function DoConnect(Sock:longint;const addr: TInetSockAddr): Boolean;
|
Function DoConnect(Sock:longint;const addr: TInetSockAddr): Boolean;
|
||||||
|
|
||||||
|
var
|
||||||
|
res: longint;
|
||||||
begin
|
begin
|
||||||
DoConnect:=fpconnect(Sock,@Addr,SizeOF(TInetSockAddr)) = 0;
|
repeat
|
||||||
|
res:=fpconnect(Sock,@Addr,SizeOF(TInetSockAddr));
|
||||||
|
until (res<>-1) or (SocketError <> EsockEINTR);
|
||||||
|
DoConnect:= res = 0;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{$warnings off}
|
{$warnings off}
|
||||||
|
Loading…
Reference in New Issue
Block a user