diff --git a/backend/walk.go b/backend/walk.go index e39b5768..5670cfd4 100644 --- a/backend/walk.go +++ b/backend/walk.go @@ -389,6 +389,11 @@ func WalkVersions(ctx context.Context, fileSystem fs.FS, prefix, delimiter, keyM return fs.SkipDir } + // Skip parents of specified prefix + if len(path+"/") < len(prefix) { + return nil + } + res, err := getObj(path, versionIdMarker, &pastVersionIdMarker, max-len(objects)-len(delMarkers)-cpmap.Len(), d) if err == ErrSkipObj { return nil