THRIFT-4340: Fix a crash on client close
Client: erl
This closes #1367
diff --git a/lib/erl/src/thrift_framed_transport.erl b/lib/erl/src/thrift_framed_transport.erl
index 715f090..9a5d6af 100644
--- a/lib/erl/src/thrift_framed_transport.erl
+++ b/lib/erl/src/thrift_framed_transport.erl
@@ -62,7 +62,8 @@
Give = min(iolist_size(NewBinary), Len),
{Result, Remaining} = split_binary(NewBinary, Give),
{State#t_framed{wrapped = NewState, read_buffer = Remaining}, {ok, Result}};
- Error -> Error
+ {NewState, Error} ->
+ {State#t_framed{wrapped = NewState}, Error}
end;
%% read of zero bytes
<<>> -> {State, {ok, <<>>}};