--- a/mod_carbons/mod_carbons.lua Wed Sep 19 16:36:32 2012 +0200
+++ b/mod_carbons/mod_carbons.lua Sat Sep 22 01:56:59 2012 +0200
@@ -7,7 +7,6 @@
local jid_bare = require "util.jid".bare;
local xmlns_carbons = "urn:xmpp:carbons:1";
local xmlns_forward = "urn:xmpp:forward:0";
-local host_sessions = hosts[module.host].sessions;
local full_sessions, bare_sessions = full_sessions, bare_sessions;
local function toggle_carbons(event)
@@ -36,15 +35,15 @@
end
-- Stanza sent by a local client
- local bare_jid = origin.type == "c2s" and origin.username .. "@" .. origin.host or jid_bare(orig_from);
+ local bare_jid = jid_bare(orig_from);
local target_session = origin;
local top_priority = false;
- local user_sessions = host_sessions[origin.username];
+ local user_sessions = bare_sessions[bare_jid];
-- Stanza about to be delivered to a local client
if not c2s then
bare_jid = jid_bare(orig_to);
- target_session = full_sessions[orig_to]
+ target_session = full_sessions[orig_to];
user_sessions = bare_sessions[bare_jid];
if not target_session and user_sessions then
-- The top resources will already receive this message per normal routing rules,