We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 60fef43 commit bce985bCopy full SHA for bce985b
lib/erl/src/thrift_socket_transport.erl
@@ -70,24 +70,7 @@ when is_integer(Len), Len >= 0 ->
70
X when X >= Len ->
71
{Result, Remaining} = split_binary(Binary, Len),
72
{State#t_socket{buffer = Remaining}, {ok, Result}};
73
- _ ->
74
- %%recv(State, Len)
75
- loop_recv(State,Len,Len)
76
- end.
77
-
78
-loop_recv(State=#t_socket{buffer = Buf},ReadLen,NextReadLen) when NextReadLen =< 0->
79
- {Result,Remaining}=split_binary(Buf,ReadLen),
80
- {State#t_socket{buffer = Remaining},{ok,Result}};
81
82
-loop_recv(State=#t_socket{socket = Socket,buffer = Buf},ReadLen,NextReadLen) when NextReadLen >0 ->
83
- case gen_tcp:recv(Socket,0,State#t_socket.recv_timeout) of
84
- {error,Error}->
85
- gen_tcp:close(Socket),
86
- {State,{error,Error}};
87
- {ok,Data}->
88
- Binary=iolist_to_binary([Buf,Data]),
89
- Give=min(iolist_size(Binary),ReadLen),
90
- loop_recv(State#t_socket{buffer = Binary},ReadLen,ReadLen-Give)
+ _ -> recv(State, Len)
91
end.
92
93
recv(State = #t_socket{socket = Socket, buffer = Buf}, Len) ->
0 commit comments