summaryrefslogtreecommitdiff
path: root/server/src
diff options
context:
space:
mode:
Diffstat (limited to 'server/src')
-rw-r--r--server/src/core/references.lua10
-rw-r--r--server/src/vm/value.lua3
2 files changed, 13 insertions, 0 deletions
diff --git a/server/src/core/references.lua b/server/src/core/references.lua
index dfd26575..4bd26b07 100644
--- a/server/src/core/references.lua
+++ b/server/src/core/references.lua
@@ -24,6 +24,16 @@ local function parseResult(vm, source, declarat, callback)
end)
return
end
+ if source:bindFunction() then
+ if declarat then
+ callback(source:bindFunction():getSource())
+ end
+ source:bindFunction():eachInfo(function (info, src)
+ if (declarat and (info.type == 'set' or info.type == 'local')) or info.type == 'get' then
+ callback(src)
+ end
+ end)
+ end
if source:bindValue() then
source:bindValue():eachInfo(function (info, src)
if (declarat and (info.type == 'set' or info.type == 'local')) or info.type == 'get' then
diff --git a/server/src/vm/value.lua b/server/src/vm/value.lua
index 4cbc47f9..c0f55b9d 100644
--- a/server/src/vm/value.lua
+++ b/server/src/vm/value.lua
@@ -315,6 +315,9 @@ function mt:addInfo(tp, source, ...)
if not id then
error('Not instanted source')
end
+ if not tp then
+ error('Miss info type')
+ end
if self._info[id] then
return
end