fix sorting taints in case the sorting keys are equal

pull/8/head
Di Xu 2018-03-16 10:54:07 +08:00
parent eefd72557e
commit bd83ed58c7
1 changed files with 12 additions and 16 deletions

View File

@ -3794,23 +3794,19 @@ func printTaintsMultilineWithIndent(w PrefixWriter, initialIndent, title, innerI
}
// to print taints in the sorted order
keys := make([]string, 0, len(taints))
for _, taint := range taints {
keys = append(keys, string(taint.Effect)+","+taint.Key)
}
sort.Strings(keys)
for i, key := range keys {
for _, taint := range taints {
if string(taint.Effect)+","+taint.Key == key {
if i != 0 {
w.Write(LEVEL_0, "%s", initialIndent)
w.Write(LEVEL_0, "%s", innerIndent)
}
w.Write(LEVEL_0, "%s\n", taint.ToString())
i++
}
sort.Slice(taints, func(i, j int) bool {
cmpKey := func(taint api.Taint) string {
return string(taint.Effect) + "," + taint.Key
}
return cmpKey(taints[i]) < cmpKey(taints[j])
})
for i, taint := range taints {
if i != 0 {
w.Write(LEVEL_0, "%s", initialIndent)
w.Write(LEVEL_0, "%s", innerIndent)
}
w.Write(LEVEL_0, "%s\n", taint.ToString())
}
}