Merge pull request #1503 from LK4D4/fix_race_delete_network

networkdb: fix race in deleteNetwork
This commit is contained in:
Santhosh Manohar 2016-10-13 12:56:39 -07:00 committed by GitHub
commit 2be2c7786d
1 changed files with 5 additions and 5 deletions

View File

@ -496,14 +496,14 @@ func (nDB *NetworkDB) addNetworkNode(nid string, nodeName string) {
// this
func (nDB *NetworkDB) deleteNetworkNode(nid string, nodeName string) {
nodes := nDB.networkNodes[nid]
for i, name := range nodes {
newNodes := make([]string, 0, len(nodes)-1)
for _, name := range nodes {
if name == nodeName {
nodes[i] = nodes[len(nodes)-1]
nodes = nodes[:len(nodes)-1]
break
continue
}
newNodes = append(newNodes, name)
}
nDB.networkNodes[nid] = nodes
nDB.networkNodes[nid] = newNodes
}
// findCommonnetworks find the networks that both this node and the