diff --git a/src/sbbs3/userdat.c b/src/sbbs3/userdat.c
index 30b67256aa7ccd5ec8021da998141d20544fbec0..5cf266a64506317a67b6a22d91a1da839006a33b 100644
--- a/src/sbbs3/userdat.c
+++ b/src/sbbs3/userdat.c
@@ -1876,6 +1876,9 @@ BOOL DLLCALL logoutuserdat(scfg_t* cfg, user_t* user, time_t now, time_t logonti
 	if(user==NULL)
 		return(FALSE);
 
+	if(now==0)
+		now=time(NULL);
+
 	tused=(now-logontime)/60;
 	user->tlast=(ushort)(tused > USHRT_MAX ? USHRT_MAX : tused);