Mercurial > prosody-modules
comparison mod_bidi/mod_bidi.lua @ 897:844b6ef5d4c4
mod_bidi: Disassociate bidi and original session when they are destroyed
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Wed, 16 Jan 2013 08:33:20 +0100 |
| parents | d066987e00b7 |
| children | 4aa473216432 |
comparison
equal
deleted
inserted
replaced
| 896:d24d87ca3f5f | 897:844b6ef5d4c4 |
|---|---|
| 110 | 110 |
| 111 function disable_bidi(event) | 111 function disable_bidi(event) |
| 112 local session = event.session; | 112 local session = event.session; |
| 113 if session.bidi_session then | 113 if session.bidi_session then |
| 114 local bidi_session = session.bidi_session; | 114 local bidi_session = session.bidi_session; |
| 115 session.bidi_session = nil; | 115 session.bidi_session, bidi_session.orig_session = nil, nil; |
| 116 session.log("debug", "Tearing down bidirectional stream"); | 116 session.log("debug", "Tearing down bidirectional stream"); |
| 117 s2smanager.destroy_session(bidi_session, event.reason); | 117 s2smanager.destroy_session(bidi_session, event.reason); |
| 118 elseif session.orig_session then | 118 elseif session.orig_session then |
| 119 local orig_session = session.orig_session; | 119 local orig_session = session.orig_session; |
| 120 session.orig_session = nil; | 120 orig_session.bidi_session, session.orig_session = nil, nil; |
| 121 orig_session.log("debug", "Tearing down bidirectional stream"); | 121 orig_session.log("debug", "Tearing down bidirectional stream"); |
| 122 s2smanager.destroy_session(orig_session, event.reason); | 122 s2smanager.destroy_session(orig_session, event.reason); |
| 123 end | 123 end |
| 124 end | 124 end |
| 125 | 125 |
