diff --git a/router.go b/router.go index 99950aae7..fa88489cb 100644 --- a/router.go +++ b/router.go @@ -439,13 +439,16 @@ func (r *DefaultRouter) Remove(method string, path string) error { } nodeToRemove.setHandler(method, nil) - var rIndex int + var rIndex = -1 for i, rr := range r.routes { if rr.Method == method && rr.Path == path { rIndex = i break } } + if rIndex < 0 { + return nil + } r.routes = append(r.routes[:rIndex], r.routes[rIndex+1:]...) if !nodeToRemove.isHandler && nodeToRemove.isLeaf {