diff --git a/ChangeLog b/ChangeLog index a21fdd427..412b767f2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2006-12-08 Alexey Shchepin + * src/ejabberd_receiver.erl: Bugfix + * src/ejabberd_c2s.erl: Bugfix 2006-12-05 Alexey Shchepin diff --git a/src/ejabberd_receiver.erl b/src/ejabberd_receiver.erl index aa39dfbdc..71a67723e 100644 --- a/src/ejabberd_receiver.erl +++ b/src/ejabberd_receiver.erl @@ -236,7 +236,12 @@ handle_info(_Info, State) -> terminate(_Reason, #state{xml_stream_state = XMLStreamState, c2s_pid = C2SPid} = State) -> xml_stream:close(XMLStreamState), - gen_fsm:send_event(C2SPid, closed), + if + C2SPid /= undefined -> + gen_fsm:send_event(C2SPid, closed); + true -> + ok + end, catch (State#state.sock_mod):close(State#state.socket), ok.