Software /
code /
prosody
Changeset
13095:1693bd4de283
core.sessionmanager: Delay closing a replaced connection after replacement
Closing the session invokes ondisconnect and session close logic,
including mod_smacks hibernation and the timer that destroys the session
after a timeout.
By closing the connection after it has been detached from the sessions
table it will no longer invoke the ondetach handler, which should
prevent the above problem.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 07 May 2023 12:27:55 +0200 |
parents | 13094:4002f0aa6a04 |
children | 13096:9638ff8b1c81 |
files | core/sessionmanager.lua plugins/mod_c2s.lua |
diffstat | 2 files changed, 2 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/core/sessionmanager.lua Thu May 04 17:30:40 2023 +0200 +++ b/core/sessionmanager.lua Sun May 07 12:27:55 2023 +0200 @@ -100,8 +100,7 @@ local replaced_conn = to_session.conn; if replaced_conn then - to_session.log("debug", "closing a replaced connection for this session"); - replaced_conn:close(); + to_session.conn = nil; end to_session.since = from_session.since;