File

util/xpcall.lua @ 12061:31a7e0ac6928

mod_smacks: Skip hibernation logic if session was closed or replaced The resumption_token is removed when the session is closed via the pre-session-close event, signaling that it cannot be resumed, and therefore no hibernation timeout logic should be invoked. Fixes that if a session somehow is replaced by a new one using the same resource (which is the common behavior), the old session would still be around until it times out at which point it sends `<presence type="unavailable"/>` which would look as if it came from the new session, ie appearing offline to everyone including MUCs.
author Kim Alvefur <zash@zash.se>
date Thu, 16 Dec 2021 22:59:51 +0100
parent 9561:cfc7b2f7251e
child 12975:d10957394a3c
line wrap: on
line source

local xpcall = xpcall;

if select(2, xpcall(function (x) return x end, function () end,  "test")) ~= "test" then
	xpcall = require"util.compat".xpcall;
end

return {
	xpcall = xpcall;
};