diff options
author | Matthew Wild <mwild1@gmail.com> | 2011-05-04 23:12:53 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2011-05-04 23:12:53 +0100 |
commit | 69a4cd5a25e4368bcc162c28138cba1d4d920c86 (patch) | |
tree | ffdbef537b05e4a2f24229662bf2ccff6991a1cc | |
parent | 49fb45a07bff1f2364743eaae6860c5b3370ebec (diff) | |
download | prosody-69a4cd5a25e4368bcc162c28138cba1d4d920c86.tar.gz prosody-69a4cd5a25e4368bcc162c28138cba1d4d920c86.zip |
mod_muc: Remove room from memory when it is made non-persistent and is empty
-rw-r--r-- | plugins/muc/mod_muc.lua | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/plugins/muc/mod_muc.lua b/plugins/muc/mod_muc.lua index 329b9270..ca2e6e20 100644 --- a/plugins/muc/mod_muc.lua +++ b/plugins/muc/mod_muc.lua @@ -58,6 +58,9 @@ local function room_save(room, forced) room._data.history = history; elseif forced then datamanager.store(node, muc_host, "config", nil); + if not next(room._occupants) then -- Room empty + rooms[room.jid] = nil; + end end if forced then datamanager.store(nil, muc_host, "persistent", persistent_rooms); end end |