Diff

plugins/muc/mod_muc.lua @ 4260:403aba5e49d5

mod_muc: Remove room from memory when it is made non-persistent and is empty
author Matthew Wild <mwild1@gmail.com>
date Wed, 04 May 2011 23:12:53 +0100
parent 3799:6a6a39b90cc0
child 4370:be14f96290a4
line wrap: on
line diff
--- a/plugins/muc/mod_muc.lua	Wed Apr 20 18:19:28 2011 +0100
+++ b/plugins/muc/mod_muc.lua	Wed May 04 23:12:53 2011 +0100
@@ -58,6 +58,9 @@
 		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