24
1
mirror of https://github.com/processone/ejabberd.git synced 2024-06-20 22:22:09 +02:00

Don't ignore send() result

This commit is contained in:
Evgeniy Khramtsov 2018-07-03 13:44:58 +03:00
parent b341a3cef3
commit 295bec8551

View File

@ -246,13 +246,18 @@ handle_sync_event(_Event, _From, StateName,
relay(MySocket, PeerSocket, Shaper) -> relay(MySocket, PeerSocket, Shaper) ->
case gen_tcp:recv(MySocket, 0) of case gen_tcp:recv(MySocket, 0) of
{ok, Data} -> {ok, Data} ->
gen_tcp:send(PeerSocket, Data), case gen_tcp:send(PeerSocket, Data) of
ok ->
{NewShaper, Pause} = shaper:update(Shaper, byte_size(Data)), {NewShaper, Pause} = shaper:update(Shaper, byte_size(Data)),
if Pause > 0 -> timer:sleep(Pause); if Pause > 0 -> timer:sleep(Pause);
true -> pass true -> pass
end, end,
relay(MySocket, PeerSocket, NewShaper); relay(MySocket, PeerSocket, NewShaper);
_ -> stopped {error, _} = Err ->
Err
end;
{error, _} = Err ->
Err
end. end.
%%%------------------------ %%%------------------------