remove skipped nodes before accessing first ID; skip empty node lists
parent
d7806c6cfd
commit
59a14b7c9d
|
@ -220,10 +220,14 @@ func removeSkippedNodes(nodes []element.Node) []element.Node {
|
||||||
// nodes need to be sorted by Id.
|
// nodes need to be sorted by Id.
|
||||||
func (self *DeltaCoordsCache) PutCoords(nodes []element.Node) error {
|
func (self *DeltaCoordsCache) PutCoords(nodes []element.Node) error {
|
||||||
var start, currentBunchId int64
|
var start, currentBunchId int64
|
||||||
|
nodes = removeSkippedNodes(nodes)
|
||||||
|
if len(nodes) == 0 {
|
||||||
|
// skipped all nodes
|
||||||
|
return nil
|
||||||
|
}
|
||||||
currentBunchId = self.getBunchId(nodes[0].Id)
|
currentBunchId = self.getBunchId(nodes[0].Id)
|
||||||
start = 0
|
start = 0
|
||||||
totalNodes := len(nodes)
|
totalNodes := len(nodes)
|
||||||
nodes = removeSkippedNodes(nodes)
|
|
||||||
for i, node := range nodes {
|
for i, node := range nodes {
|
||||||
bunchId := self.getBunchId(node.Id)
|
bunchId := self.getBunchId(node.Id)
|
||||||
if bunchId != currentBunchId {
|
if bunchId != currentBunchId {
|
||||||
|
|
Loading…
Reference in New Issue