Don't ignore send() result

This commit is contained in:
Evgeniy Khramtsov 2018-07-03 13:44:58 +03:00
parent b341a3cef3
commit 295bec8551
1 changed files with 13 additions and 8 deletions

View File

@ -245,14 +245,19 @@ 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
{NewShaper, Pause} = shaper:update(Shaper, byte_size(Data)), ok ->
if Pause > 0 -> timer:sleep(Pause); {NewShaper, Pause} = shaper:update(Shaper, byte_size(Data)),
true -> pass if Pause > 0 -> timer:sleep(Pause);
end, true -> pass
relay(MySocket, PeerSocket, NewShaper); end,
_ -> stopped relay(MySocket, PeerSocket, NewShaper);
{error, _} = Err ->
Err
end;
{error, _} = Err ->
Err
end. end.
%%%------------------------ %%%------------------------