summaryrefslogtreecommitdiff
path: root/server/src
diff options
context:
space:
mode:
Diffstat (limited to 'server/src')
-rw-r--r--server/src/method/textDocument/documentSymbol.lua5
-rw-r--r--server/src/vm/source.lua2
-rw-r--r--server/src/vm/value.lua4
3 files changed, 6 insertions, 5 deletions
diff --git a/server/src/method/textDocument/documentSymbol.lua b/server/src/method/textDocument/documentSymbol.lua
index 201137c8..915c0126 100644
--- a/server/src/method/textDocument/documentSymbol.lua
+++ b/server/src/method/textDocument/documentSymbol.lua
@@ -44,6 +44,11 @@ return function (lsp, params)
timerCache[uri] = ac.loop(0.1, function (t)
local vm, lines = lsp:getVM(uri)
if not vm then
+ if not lsp:isWaitingCompile() then
+ t:remove()
+ timerCache[uri] = nil
+ response(nil)
+ end
return
end
diff --git a/server/src/vm/source.lua b/server/src/vm/source.lua
index af8b9ab3..b74d10d2 100644
--- a/server/src/vm/source.lua
+++ b/server/src/vm/source.lua
@@ -103,7 +103,7 @@ local function instant(source)
Id = Id + 1
source.id = Id
List[Id] = source
- Watch[source] = Id
+ Watch[source] = Id
setmetatable(source, mt)
return true
end
diff --git a/server/src/vm/value.lua b/server/src/vm/value.lua
index cfcdb66d..f0525b14 100644
--- a/server/src/vm/value.lua
+++ b/server/src/vm/value.lua
@@ -182,10 +182,6 @@ function mt:getChild(index, source)
return value
end
-function mt:bindChild(other)
- self._child = other._child
-end
-
function mt:setMetaTable(metatable)
self._meta = metatable
end