Skip to content

Commit 84f829e

Browse files
committed
gopls/internal/lsp/cache: better panic if metadata invariant is broken
As an invariant, we should always have metadata available for all packages in DepsByPackagePath. Add a more useful panic for golang/go#61420. For golang/go#61420 Change-Id: Ia4aa847163e54e6d3ba3d20b8ce14938d36087c5 Reviewed-on: https://go-review.googlesource.com/c/tools/+/510701 Run-TryBot: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> gopls-CI: kokoro <noreply+kokoro@google.com> Reviewed-by: Alan Donovan <adonovan@google.com>
1 parent 03275ec commit 84f829e

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

gopls/internal/lsp/cache/check.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -807,6 +807,9 @@ func (s *snapshot) getPackageHandles(ctx context.Context, ids []PackageID) (map[
807807
n, ok := b.nodes[idxID]
808808
if !ok {
809809
m := s.meta.metadata[id]
810+
if m == nil {
811+
panic(fmt.Sprintf("nil metadata for %q", id))
812+
}
810813
n = &handleNode{
811814
m: m,
812815
idxID: idxID,

0 commit comments

Comments
 (0)