diff --git a/irc/commands.go b/irc/commands.go index 9a0a5c14..d9de1668 100644 --- a/irc/commands.go +++ b/irc/commands.go @@ -41,7 +41,8 @@ func (cmd *Command) Run(server *Server, client *Client, msg ircmsg.IrcMessage) b if !cmd.leaveClientActive { client.Active() } - if !cmd.leaveClientIdle { + // only touch client if they're registered so that unregistered clients timeout appropriately + if client.registered && !cmd.leaveClientIdle { client.Touch() } exiting := cmd.handler(server, client, msg)