From 51e55d24289f33d7e853915fd710928dbf3c8998 Mon Sep 17 00:00:00 2001 From: aoife cassidy Date: Sat, 1 Nov 2025 21:40:57 +0100 Subject: [PATCH] avoid concurrent map iteration and map write --- main.go | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/main.go b/main.go index 46d863b..954c05e 100644 --- a/main.go +++ b/main.go @@ -4,6 +4,7 @@ import ( "context" "fmt" "log" + "maps" "net" "os" "slices" @@ -214,12 +215,7 @@ func (m model) View() (s string) { } s += fmt.Sprintf("%d user%s connected:\n", numUsers, plural) - keys := make([]string, 0, numUsers) - for k := range m.users { - keys = append(keys, k) - } - slices.Sort(keys) - for _, nick := range keys { + for _, nick := range slices.Sorted(maps.Keys(m.users)) { user := m.users[nick] status := " " nickStyled := styleInactive.Render(nick)