Use loop label in InnerRingUpdate call handler

This commit is contained in:
Leonard Lyubich 2020-05-20 12:38:11 +03:00
parent 859c29c8df
commit 9a51b508e8

View file

@ -230,35 +230,27 @@ func Main(op string, args []interface{}) interface{} {
offset = 10 offset = 10
newIR := []node{} newIR := []node{}
for i := 0; i < listItemCount; i++ { loop:
for i := 0; i < listItemCount; i, offset = i+1, offset+33 {
pub := data[offset : offset+33] pub := data[offset : offset+33]
finished := false
for j := 0; j < len(irList); j++ { for j := 0; j < len(irList); j++ {
n := irList[j] n := irList[j]
if util.Equals(n.pub, pub) { if util.Equals(n.pub, pub) {
newIR = append(newIR, n) newIR = append(newIR, n)
finished = true continue loop
break
} }
} }
if !finished {
for j := 0; j < len(candidates); j++ { for j := 0; j < len(candidates); j++ {
n := candidates[j] n := candidates[j]
if util.Equals(n.pub, pub) { if util.Equals(n.pub, pub) {
newIR = append(newIR, n) newIR = append(newIR, n)
finished = true continue loop
break
} }
} }
if !finished {
panic("unknown inner ring candidate present in the list")
}
}
offset += 33
} }
if len(newIR) != listItemCount { if len(newIR) != listItemCount {
panic("new inner ring wasn't processed correctly") panic("new inner ring wasn't processed correctly")
} }