Software /
code /
prosody
Comparison
core/sessionmanager.lua @ 2752:18d8009f06cb
sessionmanager: Don't re-destroy destroyed sessions
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Sun, 14 Mar 2010 02:59:41 +0000 |
parent | 2751:1d7746c3a8c6 |
child | 2915:f47bd0f7e2e6 |
comparison
equal
deleted
inserted
replaced
2751:1d7746c3a8c6 | 2752:18d8009f06cb |
---|---|
86 return setmetatable(session, resting_session); | 86 return setmetatable(session, resting_session); |
87 end | 87 end |
88 | 88 |
89 function destroy_session(session, err) | 89 function destroy_session(session, err) |
90 (session.log or log)("info", "Destroying session for %s (%s@%s)", session.full_jid or "(unknown)", session.username or "(unknown)", session.host or "(unknown)"); | 90 (session.log or log)("info", "Destroying session for %s (%s@%s)", session.full_jid or "(unknown)", session.username or "(unknown)", session.host or "(unknown)"); |
91 if session.destroyed then return; end | |
91 | 92 |
92 -- Remove session/resource from user's session list | 93 -- Remove session/resource from user's session list |
93 if session.full_jid then | 94 if session.full_jid then |
94 hosts[session.host].sessions[session.username].sessions[session.resource] = nil; | 95 hosts[session.host].sessions[session.username].sessions[session.resource] = nil; |
95 full_sessions[session.full_jid] = nil; | 96 full_sessions[session.full_jid] = nil; |