stanza_router: Fix for subscriptions to users on components [0.4 branch only]

Thu, 21 May 2009 16:06:50 +0100

author
Matthew Wild <mwild1@gmail.com>
date
Thu, 21 May 2009 16:06:50 +0100
changeset 1190
fff8158faae2
parent 1186
078eb3b109e9
child 1191
7f965bd37d65
child 1192
b1b42ce4f0f6

stanza_router: Fix for subscriptions to users on components [0.4 branch only]

core/stanza_router.lua file | annotate | diff | comparison | revisions
--- a/core/stanza_router.lua	Mon May 18 04:48:35 2009 +0100
+++ b/core/stanza_router.lua	Thu May 21 16:06:50 2009 +0100
@@ -123,14 +123,14 @@
 			core_handle_stanza(origin, stanza);
 		elseif stanza.attr.xmlns and stanza.attr.xmlns ~= "jabber:client" and stanza.attr.xmlns ~= "jabber:server" then
 			modules_handle_stanza(host or origin.host or origin.to_host, origin, stanza);
+		elseif origin.type == "c2s" and stanza.name == "presence" and stanza.attr.type ~= nil and stanza.attr.type ~= "unavailable" and stanza.attr.type ~= "error" then
+			handle_outbound_presence_subscriptions_and_probes(origin, stanza, from_bare, to_bare, core_route_stanza);
 		elseif hosts[to] and hosts[to].type == "component" then -- hack to allow components to handle node@server/resource and server/resource
 			component_handle_stanza(origin, stanza);
 		elseif hosts[to_bare] and hosts[to_bare].type == "component" then -- hack to allow components to handle node@server
 			component_handle_stanza(origin, stanza);
 		elseif hosts[host] and hosts[host].type == "component" then -- directed at a component
 			component_handle_stanza(origin, stanza);
-		elseif origin.type == "c2s" and stanza.name == "presence" and stanza.attr.type ~= nil and stanza.attr.type ~= "unavailable" and stanza.attr.type ~= "error" then
-			handle_outbound_presence_subscriptions_and_probes(origin, stanza, from_bare, to_bare, core_route_stanza);
 		elseif hosts[host] and hosts[host].type == "local" and stanza.name == "iq" and not resource then -- directed at bare JID
 			core_handle_stanza(origin, stanza);
 		else

mercurial