From dba8f998cf39a07fd93fb985a17b32a274fb23f3 Mon Sep 17 00:00:00 2001
From: Matthew Wild <mwild1@gmail.com>
Date: Thu, 23 Oct 2008 18:05:06 +0100
Subject: Final fix for marking user offline when all resources are gone :)

---
 core/sessionmanager.lua | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/core/sessionmanager.lua b/core/sessionmanager.lua
index 19614311..d140ebe0 100644
--- a/core/sessionmanager.lua
+++ b/core/sessionmanager.lua
@@ -1,6 +1,6 @@
 
 local tonumber, tostring = tonumber, tostring;
-local ipairs, pairs, print= ipairs, pairs, print;
+local ipairs, pairs, print, next= ipairs, pairs, print, next;
 local collectgarbage = collectgarbage;
 local m_random = import("math", "random");
 local format = import("string", "format");
@@ -39,7 +39,9 @@ function destroy_session(session)
 		if session.resource then
 			hosts[session.host].sessions[session.username].sessions[session.resource] = nil;
 		end
-		if not next(hosts[session.host].sessions[session.username], nil) then
+		
+		if not next(hosts[session.host].sessions[session.username].sessions) then
+			log("debug", "All resources of %s are now offline", session.username);
 			hosts[session.host].sessions[session.username] = nil;
 		end
 	end
-- 
cgit v1.2.3