diff --git a/internal/lsp/cache/view.go b/internal/lsp/cache/view.go index 01b533c0..8c719ead 100644 --- a/internal/lsp/cache/view.go +++ b/internal/lsp/cache/view.go @@ -197,6 +197,9 @@ type entry struct { } func (imp *importer) addImports(path string, pkg *packages.Package) error { + if _, ok := imp.packages[path]; ok { + return nil + } imp.packages[path] = pkg for importPath, importPkg := range pkg.Imports { if err := imp.addImports(importPath, importPkg); err != nil {