X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=cmd%2Fmmc%2Fmain.go;h=9283745d0563ab514b0c78a8d67545f1220848b7;hb=f16bd4e2426d611341e276b7a1cab4e33f0bef8f;hp=9748be35d202e49a8d8d206c60fb92d35d80acec;hpb=4d5077d60d27f075f58626e53d9dddd1a810851a;p=mmc.git diff --git a/cmd/mmc/main.go b/cmd/mmc/main.go index 9748be3..9283745 100644 --- a/cmd/mmc/main.go +++ b/cmd/mmc/main.go @@ -329,15 +329,20 @@ func main() { log.Println("OpenFile:", pth, err) continue } - statuses := make(map[string][]string) + agg := make(map[string][]string) UserStatusM.RLock() for name, status := range UserStatus { - statuses[status] = append(statuses[status], name) + agg[status] = append(agg[status], name) } UserStatusM.RUnlock() - for status := range statuses { - sort.Strings(statuses[status]) - fmt.Fprintln(fd, status+":", strings.Join(statuses[status], " ")) + statuses := make([]string, 0, len(agg)) + for status := range agg { + sort.Strings(agg[status]) + statuses = append(statuses, status) + } + sort.Strings(statuses) + for _, status := range statuses { + fmt.Fprintln(fd, status+":", strings.Join(agg[status], " ")) } fd.Close() }