diff --git a/internal/mtproto/manager.go b/internal/mtproto/manager.go index 87824049f..2ea5002ce 100644 --- a/internal/mtproto/manager.go +++ b/internal/mtproto/manager.go @@ -7,6 +7,7 @@ import ( "encoding/hex" "encoding/json" "fmt" + "maps" "net" "net/http" "net/url" @@ -413,9 +414,7 @@ func (m *Manager) CollectTraffic() ([]Traffic, []string) { continue } lastCopy := make(map[string]clientCounters, len(cur.last)) - for k, v := range cur.last { - lastCopy[k] = v - } + maps.Copy(lastCopy, cur.last) snaps = append(snaps, snap{id: id, apiPort: cur.apiPort, apiToken: cur.apiToken, tag: cur.tag, last: lastCopy}) } m.mu.Unlock() diff --git a/internal/sub/sub_scale_test.go b/internal/sub/sub_scale_test.go index c9858779e..55c65637a 100644 --- a/internal/sub/sub_scale_test.go +++ b/internal/sub/sub_scale_test.go @@ -54,7 +54,7 @@ func scaleSubSizes(t *testing.T, def ...int) []int { return def } var out []int - for _, part := range strings.Split(raw, ",") { + for part := range strings.SplitSeq(raw, ",") { part = strings.TrimSpace(part) if part == "" { continue diff --git a/internal/web/job/check_client_ip_scale_test.go b/internal/web/job/check_client_ip_scale_test.go index 3760e121e..d57f1cd58 100644 --- a/internal/web/job/check_client_ip_scale_test.go +++ b/internal/web/job/check_client_ip_scale_test.go @@ -51,7 +51,7 @@ func scaleJobSizes(t *testing.T, def ...int) []int { return def } var out []int - for _, part := range strings.Split(raw, ",") { + for part := range strings.SplitSeq(raw, ",") { part = strings.TrimSpace(part) if part == "" { continue diff --git a/internal/web/service/reality_scan.go b/internal/web/service/reality_scan.go index f3965970c..2b4b99854 100644 --- a/internal/web/service/reality_scan.go +++ b/internal/web/service/reality_scan.go @@ -286,7 +286,7 @@ func (s *ServerService) ScanRealityTarget(target string) (*RealityScanResult, er func (s *ServerService) ScanRealityTargets(targetsCSV string) ([]*RealityScanResult, error) { var tokens []string - for _, raw := range strings.Split(targetsCSV, ",") { + for raw := range strings.SplitSeq(targetsCSV, ",") { if t := strings.TrimSpace(raw); t != "" { tokens = append(tokens, t) } diff --git a/internal/web/service/scale_helpers_test.go b/internal/web/service/scale_helpers_test.go index 894c3a990..87a2888a3 100644 --- a/internal/web/service/scale_helpers_test.go +++ b/internal/web/service/scale_helpers_test.go @@ -60,7 +60,7 @@ func scaleSizes(t *testing.T, def ...int) []int { return def } var out []int - for _, part := range strings.Split(raw, ",") { + for part := range strings.SplitSeq(raw, ",") { part = strings.TrimSpace(part) if part == "" { continue