X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=plugins%2Fmuc%2Fmuc.lib.lua;h=ce6c57840819c30010c87ccc5c18323e2064bcb1;hb=59a3750fe36f57478a898d2708cf98fea45e762e;hp=14aad42c329d7cca1db896c92924f26d85af56f9;hpb=be7359164d5a2386006ac3e41a2558446edb6378;p=prosody.git diff --git a/plugins/muc/muc.lib.lua b/plugins/muc/muc.lib.lua index 14aad42c..ce6c5784 100644 --- a/plugins/muc/muc.lib.lua +++ b/plugins/muc/muc.lib.lua @@ -1283,10 +1283,10 @@ function _M.restore_room(frozen) for jid, data in pairs(frozen) do local node, host, resource = jid_split(jid); if node or host:sub(1,1) ~= "_" then - if not resource then + if not resource and type(data) == "string" then -- bare jid: affiliation room._affiliations[jid] = data; - elseif host == room_host and node == room_name then + elseif host == room_host and node == room_name and resource then -- full room jid: bare real jid and role local bare_jid = data.bare_jid; local occupant = occupant_lib.new(bare_jid, jid);