x/tools/gopls: Completion: nil deref panic in addFieldItems #72828
Labels
BugReport
Issues describing a possible bug in the Go implementation.
gopls/telemetry-wins
gopls
Issues related to the Go language server, gopls.
NeedsInvestigation
Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Tools
This label describes issues relating to any tools in the x/tools repository.
Milestone
Issue created by stacks.
From the calling context, it's clear that c is non-nil, so c.surrounding must be nil. This can happen if the various setSurrounding* functions are not called or return early. The fix is to make the panicking statement defensive.
This stack
tANNhQ
was reported by telemetry:crash/crash
runtime.gopanic:+69
runtime.panicmem:=262
runtime.sigpanic:+19
golang.org/x/tools/gopls/internal/golang/completion.(*completer).addFieldItems:+5
golang.org/x/tools/gopls/internal/golang/completion.(*completer).populateCommentCompletions:+79
golang.org/x/tools/gopls/internal/golang/completion.(*completer).collectCompletions:+12
golang.org/x/tools/gopls/internal/golang/completion.Completion:+163
golang.org/x/tools/gopls/internal/server.(*server).Completion:+19
golang.org/x/tools/gopls/internal/protocol.serverDispatch:+193
golang.org/x/tools/gopls/internal/lsprpc.(*streamServer).ServeStream.ServerHandler.func3:+5
golang.org/x/tools/gopls/internal/lsprpc.(*streamServer).ServeStream.handshaker.func4:+52
golang.org/x/tools/gopls/internal/protocol.Handlers.MustReplyHandler.func1:+2
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2:+3
runtime.goexit:+0
The text was updated successfully, but these errors were encountered: