From 46361a7c85401277965deb590e00608cbd20d1bd Mon Sep 17 00:00:00 2001 From: David Symonds Date: Sat, 23 Feb 2019 19:51:44 +1100 Subject: [PATCH] rules: Fix sorting of result from (*Manager).RuleGroups (#5260) The previous code was defective in that it never sorted groups within a file due to doing a multi-key sort incorrectly. Signed-off-by: David Symonds --- rules/manager.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/rules/manager.go b/rules/manager.go index 2aae53337b..4f82f4ee07 100644 --- a/rules/manager.go +++ b/rules/manager.go @@ -861,8 +861,12 @@ func (m *Manager) RuleGroups() []*Group { rgs = append(rgs, g) } + // Sort rule groups by file, then by name. sort.Slice(rgs, func(i, j int) bool { - return rgs[i].file < rgs[j].file && rgs[i].name < rgs[j].name + if rgs[i].file != rgs[j].file { + return rgs[i].file < rgs[j].file + } + return rgs[i].name < rgs[j].name }) return rgs