diff --git a/SharpChat/ChatContext.cs b/SharpChat/ChatContext.cs index 0b6ac2c..ce5c385 100644 --- a/SharpChat/ChatContext.cs +++ b/SharpChat/ChatContext.cs @@ -189,9 +189,10 @@ namespace SharpChat } public void BanUser(ChatUser user, TimeSpan duration, UserDisconnectReason reason = UserDisconnectReason.Kicked) { - if(duration > TimeSpan.Zero) - SendTo(user, new ForceDisconnectPacket(ForceDisconnectReason.Banned, DateTimeOffset.Now + duration)); - else + if (duration > TimeSpan.Zero) { + DateTimeOffset expires = duration >= TimeSpan.MaxValue ? DateTimeOffset.MaxValue : DateTimeOffset.Now + duration; + SendTo(user, new ForceDisconnectPacket(ForceDisconnectReason.Banned, expires)); + } else SendTo(user, new ForceDisconnectPacket(ForceDisconnectReason.Kicked)); foreach(ChatConnection conn in Connections)