From 35f9dc622e57f2d10b3e61a76ee0ad8a7b0f79cb Mon Sep 17 00:00:00 2001 From: Bryan Boreham Date: Tue, 7 Jul 2015 17:00:28 +0100 Subject: [PATCH] More efficient slice-insert - less copying, less garbage --- report/id_list.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/report/id_list.go b/report/id_list.go index a85486485..6fd9596e1 100644 --- a/report/id_list.go +++ b/report/id_list.go @@ -26,7 +26,9 @@ func (a IDList) Add(ids ...string) IDList { continue } // It a new element, insert it in order. - a = append(a[:i], append(IDList{s}, a[i:]...)...) + a = append(a, "") + copy(a[i+1:], a[i:]) + a[i] = s } return a }