diff options
author | ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp> | 2016-04-15 05:26:23 +0000 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2016-04-19 14:15:15 +0900 |
commit | 893f92f861291b369532b75baa87a63dca57d2ab (patch) | |
tree | 4eb2dec56c6117d13dfca2fbe3277421267a9514 /table/destination.go | |
parent | 3bd6e20fe4e3fb60b28dbd06367627bd4df9ddff (diff) |
table: fix bug of incomplete withdrawal handling
When mod action is used in route server configuration,
`Destination.knownPathList` holds multiple modified paths whose original path
is same.
In that case, when the original path is withdrawn, we must remove all
modified paths.
There was a wrong `break` in `Destination.explicitWithdraw()` which avoids
this.
test is also added to check the behavior.
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
Diffstat (limited to 'table/destination.go')
-rw-r--r-- | table/destination.go | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/table/destination.go b/table/destination.go index 6839c608..5603f894 100644 --- a/table/destination.go +++ b/table/destination.go @@ -317,8 +317,6 @@ func (dest *Destination) explicitWithdraw() paths { isFound = true path.IsWithdraw = true matches = append(matches, path) - // One withdraw can remove only one path. - break } } |