diff options
author | Kim Alvefur <zash@zash.se> | 2018-11-27 17:01:47 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2018-11-27 17:01:47 +0100 |
commit | cf22878c983c7ebd6cf2a6bef90ed44b7295298d (patch) | |
tree | 5a2109f91ba257bb3262c763d0c4d338ddcf4aea | |
parent | 88940a3559cbe1ce175bcf6969b233dbb4bdd7c4 (diff) | |
download | prosody-cf22878c983c7ebd6cf2a6bef90ed44b7295298d.tar.gz prosody-cf22878c983c7ebd6cf2a6bef90ed44b7295298d.zip |
MUC: Move check for explicit room join earlier in room creation flow
-rw-r--r-- | plugins/muc/mod_muc.lua | 2 | ||||
-rw-r--r-- | plugins/muc/muc.lib.lua | 7 |
2 files changed, 1 insertions, 8 deletions
diff --git a/plugins/muc/mod_muc.lua b/plugins/muc/mod_muc.lua index 954bae92..89e67744 100644 --- a/plugins/muc/mod_muc.lua +++ b/plugins/muc/mod_muc.lua @@ -453,7 +453,7 @@ for event_name, method in pairs { if room == nil then -- Watch presence to create rooms - if stanza.attr.type == nil and stanza.name == "presence" then + if stanza.attr.type == nil and stanza.name == "presence" and stanza:get_child("x", "http://jabber.org/protocol/muc") then room = muclib.new_room(room_jid); return room:handle_first_presence(origin, stanza); elseif stanza.attr.type ~= "error" then diff --git a/plugins/muc/muc.lib.lua b/plugins/muc/muc.lib.lua index 96f58023..0009e9b2 100644 --- a/plugins/muc/muc.lib.lua +++ b/plugins/muc/muc.lib.lua @@ -428,13 +428,6 @@ module:hook("muc-occupant-pre-change", function(event) end, 1); function room_mt:handle_first_presence(origin, stanza) - if not stanza:get_child("x", "http://jabber.org/protocol/muc") then - module:log("debug", "Room creation without <x>, possibly desynced"); - - origin.send(st.error_reply(stanza, "cancel", "item-not-found")); - return true; - end - local real_jid = stanza.attr.from; local dest_jid = stanza.attr.to; local bare_jid = jid_bare(real_jid); |