From 38eea5b2ad6a6bf108cf4445506559118e34d782 Mon Sep 17 00:00:00 2001 From: Rui Ueyama Date: Mon, 16 Jun 2014 18:00:28 -0700 Subject: [PATCH] net: avoid array copy when shuffling SRV records We don't need to shift array elements to shuffle them. We just have to swap a selected element with 0th element. LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/91750044 --- src/pkg/net/dnsclient.go | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/pkg/net/dnsclient.go b/src/pkg/net/dnsclient.go index 9bffa11f91..e8014e4ffc 100644 --- a/src/pkg/net/dnsclient.go +++ b/src/pkg/net/dnsclient.go @@ -196,9 +196,7 @@ func (addrs byPriorityWeight) shuffleByWeight() { s += int(addrs[i].Weight) if s > n { if i > 0 { - t := addrs[i] - copy(addrs[1:i+1], addrs[0:i]) - addrs[0] = t + addrs[0], addrs[i] = addrs[i], addrs[0] } break } -- 2.48.1