From 23f623829a9f60d0b8a74249bd84370b4390a108 Mon Sep 17 00:00:00 2001 From: qm012 Date: Mon, 5 Jul 2021 11:17:37 +0800 Subject: [PATCH] fix checks error --- tree.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tree.go b/tree.go index b6cc2db4..94875e77 100644 --- a/tree.go +++ b/tree.go @@ -446,7 +446,7 @@ walk: // Outer loop for walking the tree n = n.children[i] // match '/', If this condition is matched, the next route is found - if len(n.fullPath) != 0 && n.wildChild { + if (len(n.fullPath) != 0 && n.wildChild) || strings.HasSuffix(path, "/") { matchNum++ } continue walk @@ -609,7 +609,9 @@ walk: // Outer loop for walking the tree // Nothing found. We can recommend to redirect to the same URL with an // extra trailing slash if a leaf exists for that path - // tree.go line:569 handle leaf nodes + value.tsr = (path == "/") || + (len(prefix) == len(path)+1 && prefix[len(path)] == '/' && + path == prefix[:len(prefix)-1] && n.handlers != nil) return } }