From 9a2117f75d61e4a3b05b3238067d7d8ea25b6ab4 Mon Sep 17 00:00:00 2001 From: Shivaram Lingamneni Date: Tue, 1 Jan 2019 23:45:47 -0500 Subject: [PATCH] preregNick doesn't need synchronization (since it's only accessed from the client's own goroutine) --- irc/getters.go | 12 ------------ irc/handlers.go | 2 +- irc/server.go | 7 +++---- 3 files changed, 4 insertions(+), 17 deletions(-) diff --git a/irc/getters.go b/irc/getters.go index b2ac01c3..c1f65afa 100644 --- a/irc/getters.go +++ b/irc/getters.go @@ -179,18 +179,6 @@ func (client *Client) SetAuthorized(authorized bool) { client.authorized = authorized } -func (client *Client) PreregNick() string { - client.stateMutex.RLock() - defer client.stateMutex.RUnlock() - return client.preregNick -} - -func (client *Client) SetPreregNick(preregNick string) { - client.stateMutex.Lock() - defer client.stateMutex.Unlock() - client.preregNick = preregNick -} - func (client *Client) HasMode(mode modes.Mode) bool { // client.flags has its own synch return client.flags.HasMode(mode) diff --git a/irc/handlers.go b/irc/handlers.go index 8ef2d45b..81af9c45 100644 --- a/irc/handlers.go +++ b/irc/handlers.go @@ -1662,7 +1662,7 @@ func nickHandler(server *Server, client *Client, msg ircmsg.IrcMessage, rb *Resp if client.Registered() { performNickChange(server, client, client, msg.Params[0], rb) } else { - client.SetPreregNick(msg.Params[0]) + client.preregNick = msg.Params[0] } return false } diff --git a/irc/server.go b/irc/server.go index 9beecb85..bf810bd6 100644 --- a/irc/server.go +++ b/irc/server.go @@ -386,8 +386,7 @@ func (server *Server) tryRegister(c *Client) { return } - preregNick := c.PreregNick() - if preregNick == "" || !c.HasUsername() || c.capState == caps.NegotiatingState { + if c.preregNick == "" || !c.HasUsername() || c.capState == caps.NegotiatingState { return } @@ -400,10 +399,10 @@ func (server *Server) tryRegister(c *Client) { } rb := NewResponseBuffer(c) - nickAssigned := performNickChange(server, c, c, preregNick, rb) + nickAssigned := performNickChange(server, c, c, c.preregNick, rb) rb.Send(true) if !nickAssigned { - c.SetPreregNick("") + c.preregNick = "" return }