@@ -303,7 +303,11 @@ func (s *Server) handleDidClose(req *lsproto.RequestMessage) error {
303303func (s * Server ) handleDocumentDiagnostic (req * lsproto.RequestMessage ) error {
304304 params := req .Params .(* lsproto.DocumentDiagnosticParams )
305305 file , project := s .getFileAndProject (params .TextDocument .Uri )
306- diagnostics := project .LanguageService ().GetDocumentDiagnostics (file .FileName ())
306+ diagnostics , err := project .LanguageService ().GetDocumentDiagnostics (file .FileName ())
307+ if err != nil {
308+ return s .sendError (req .ID , err )
309+ }
310+
307311 lspDiagnostics := make ([]lsproto.Diagnostic , len (diagnostics ))
308312 for i , diag := range diagnostics {
309313 if lspDiagnostic , err := s .converters .toLspDiagnostic (diag ); err != nil {
@@ -330,7 +334,11 @@ func (s *Server) handleHover(req *lsproto.RequestMessage) error {
330334 return s .sendError (req .ID , err )
331335 }
332336
333- hoverText := project .LanguageService ().ProvideHover (file .FileName (), pos )
337+ hoverText , err := project .LanguageService ().ProvideHover (file .FileName (), pos )
338+ if err != nil {
339+ return s .sendError (req .ID , err )
340+ }
341+
334342 return s .sendResult (req .ID , & lsproto.Hover {
335343 Contents : lsproto.MarkupContentOrMarkedStringOrMarkedStrings {
336344 MarkupContent : & lsproto.MarkupContent {
@@ -349,7 +357,11 @@ func (s *Server) handleDefinition(req *lsproto.RequestMessage) error {
349357 return s .sendError (req .ID , err )
350358 }
351359
352- locations := project .LanguageService ().ProvideDefinitions (file .FileName (), pos )
360+ locations , err := project .LanguageService ().ProvideDefinitions (file .FileName (), pos )
361+ if err != nil {
362+ return s .sendError (req .ID , err )
363+ }
364+
353365 lspLocations := make ([]lsproto.Location , len (locations ))
354366 for i , loc := range locations {
355367 if lspLocation , err := s .converters .toLspLocation (loc ); err != nil {
0 commit comments