summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
Diffstat (limited to 'server')
-rw-r--r--server/src/core/global.lua1
-rw-r--r--server/src/service.lua3
2 files changed, 3 insertions, 1 deletions
diff --git a/server/src/core/global.lua b/server/src/core/global.lua
index 5704bfd4..ba4fdc47 100644
--- a/server/src/core/global.lua
+++ b/server/src/core/global.lua
@@ -25,7 +25,6 @@ function mt:markGet(uri, k)
end
function mt:compileVM(uri, vm)
- self:clearGlobal(uri)
local seted = {}
for k, v in next, vm.env.child do
local get, set
diff --git a/server/src/service.lua b/server/src/service.lua
index 57606d19..8e22c724 100644
--- a/server/src/service.lua
+++ b/server/src/service.lua
@@ -293,6 +293,7 @@ function mt:compileVM(uri)
local ast = self:compileAst(obj)
obj.astCost = os.clock() - clock
self:_clearChainNode(obj, uri)
+ self._global:clearGlobal(uri)
local clock = os.clock()
obj.vm = core.vm(ast, self, uri)
@@ -336,6 +337,8 @@ function mt:doDiagnostics(uri)
uri = uri,
diagnostics = res,
})
+ else
+ self:clearDiagnostics(uri)
end
end