Receiver should not generate an exception

This commit is contained in:
Evgeniy Khramtsov 2012-02-14 17:03:08 +10:00
parent 948318ca19
commit 4819738e8f
1 changed files with 12 additions and 4 deletions

View File

@ -84,16 +84,16 @@ change_shaper(Pid, Shaper) ->
gen_server:cast(Pid, {change_shaper, Shaper}).
reset_stream(Pid) ->
gen_server:call(Pid, reset_stream).
do_call(Pid, reset_stream).
starttls(Pid, TLSSocket) ->
gen_server:call(Pid, {starttls, TLSSocket}).
do_call(Pid, {starttls, TLSSocket}).
compress(Pid, ZlibSocket) ->
gen_server:call(Pid, {compress, ZlibSocket}).
do_call(Pid, {compress, ZlibSocket}).
become_controller(Pid, C2SPid) ->
gen_server:call(Pid, {become_controller, C2SPid}).
do_call(Pid, {become_controller, C2SPid}).
close(Pid) ->
gen_server:cast(Pid, close).
@ -345,3 +345,11 @@ close_stream(undefined) ->
ok;
close_stream(XMLStreamState) ->
xml_stream:close(XMLStreamState).
do_call(Pid, Msg) ->
case catch gen_server:call(Pid, Msg) of
{'EXIT', Why} ->
{error, Why};
Res ->
Res
end.