aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEvgeniy Khramtsov <ekhramtsov@process-one.net>2016-05-09 14:18:47 +0300
committerEvgeniy Khramtsov <ekhramtsov@process-one.net>2016-05-09 14:18:47 +0300
commitbe2a9e35ae0e0706738862f29238f7dddf150e34 (patch)
tree6b1e9bf7baab12c1bf0910f9f035e0bc00d18455 /src
parentHandle Redis connection in a separate module (diff)
Fix C2S session data leak (#1078)
Diffstat (limited to 'src')
-rw-r--r--src/ejabberd_c2s.erl6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl
index 5cfa74bde..080880bec 100644
--- a/src/ejabberd_c2s.erl
+++ b/src/ejabberd_c2s.erl
@@ -1053,7 +1053,11 @@ wait_for_bind({xmlstreamelement, El}, StateData) ->
children =
[{xmlcdata,
jid:to_string(JID)}]}]}]},
- send_element(StateData3, jlib:iq_to_xml(Res)),
+ try
+ send_element(StateData3, jlib:iq_to_xml(Res))
+ catch exit:normal ->
+ close(self())
+ end,
fsm_next_state_pack(
session_established,
StateData3);