list: Fixed client's own nick not being updated by NAMES reply.

This commit is contained in:
2018-12-02 17:14:16 +01:00
parent d42df0d7a0
commit c1e97eb9d2
+16 -1
View File
@@ -63,7 +63,22 @@ func (list *List) InsertFromNamesToken(namestoken string) (ok bool) {
}
}
return list.Insert(user)
ok = list.Insert(user)
if !ok {
// Patch the user's modes and prefixes since this is up to date information.
list.mutex.Lock()
for _, existing := range list.users {
if existing.Nick == user.Nick {
existing.Modes = user.Modes
existing.Prefixes = user.Prefixes
existing.updatePrefixedNick()
break
}
}
list.mutex.Unlock()
}
return ok
}
// Insert a user. Modes and prefixes will be cleaned up before insertion.