@@ -135,7 +135,7 @@ local function solveUndefinedGlobal(uri, diag, results)
135135 if not state then
136136 return
137137 end
138- local start = converter .unpackRange (uri , diag .range )
138+ local start = converter .unpackRange (state , diag .range )
139139 guide .eachSourceContain (state .ast , start , function (source )
140140 if source .type ~= ' getglobal' then
141141 return
@@ -157,7 +157,7 @@ local function solveLowercaseGlobal(uri, diag, results)
157157 if not state then
158158 return
159159 end
160- local start = converter .unpackRange (uri , diag .range )
160+ local start = converter .unpackRange (state , diag .range )
161161 guide .eachSourceContain (state .ast , start , function (source )
162162 if source .type ~= ' setglobal' then
163163 return
@@ -175,7 +175,7 @@ local function findSyntax(uri, diag)
175175 end
176176 for _ , err in ipairs (state .errs ) do
177177 if err .type :lower ():gsub (' _' , ' -' ) == diag .code then
178- local range = converter .packRange (uri , err .start , err .finish )
178+ local range = converter .packRange (state , err .start , err .finish )
179179 if util .equal (range , diag .range ) then
180180 return err
181181 end
@@ -276,7 +276,11 @@ local function solveSyntax(uri, diag, results)
276276end
277277
278278local function solveNewlineCall (uri , diag , results )
279- local start = converter .unpackRange (uri , diag .range )
279+ local state = files .getState (uri )
280+ if not state then
281+ return
282+ end
283+ local start = converter .unpackRange (state , diag .range )
280284 results [# results + 1 ] = {
281285 title = lang .script .ACTION_ADD_SEMICOLON ,
282286 kind = ' quickfix' ,
@@ -333,7 +337,7 @@ local function solveAwaitInSync(uri, diag, results)
333337 if not state then
334338 return
335339 end
336- local start , finish = converter .unpackRange (uri , diag .range )
340+ local start , finish = converter .unpackRange (state , diag .range )
337341 local parentFunction
338342 guide .eachSourceType (state .ast , ' function' , function (source )
339343 if source .start > finish
@@ -369,6 +373,10 @@ local function solveAwaitInSync(uri, diag, results)
369373end
370374
371375local function solveSpell (uri , diag , results )
376+ local state = files .getState (uri )
377+ if not state then
378+ return
379+ end
372380 local spell = require ' provider.spell'
373381 local word = diag .data
374382 if word == nil then
@@ -401,8 +409,8 @@ local function solveSpell(uri, diag, results)
401409 changes = {
402410 [uri ] = {
403411 {
404- start = converter .unpackPosition (uri , diag .range .start ),
405- finish = converter .unpackPosition (uri , diag .range [" end" ]),
412+ start = converter .unpackPosition (state , diag .range .start ),
413+ finish = converter .unpackPosition (state , diag .range [" end" ]),
406414 newText = suggest
407415 }
408416 }
0 commit comments