diff --git a/resolver/fast.go b/resolver/fast.go index dc6a0bb..bb1508b 100644 --- a/resolver/fast.go +++ b/resolver/fast.go @@ -16,7 +16,7 @@ type FastResolver struct { upstreams []LookupNetIPer } -func FastFromURLs(urls ...string) (*FastResolver, error) { +func FastFromURLs(urls ...string) (LookupNetIPer, error) { resolvers := make([]LookupNetIPer, 0, len(urls)) for i, u := range urls { res, err := FromURL(u) @@ -25,6 +25,9 @@ func FastFromURLs(urls ...string) (*FastResolver, error) { } resolvers = append(resolvers, res) } + if len(resolvers) == 1 { + return resolvers[0], nil + } return NewFastResolver(resolvers...), nil }