Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/processone/ejabberd.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
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/ejabberd_c2s.erl
parent068db1a2d98c338b408f84b5a294ae7400256e13 (diff)
Fix C2S session data leak (#1078)
Diffstat (limited to 'src/ejabberd_c2s.erl')
-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);