diff options
Diffstat (limited to 'server')
-rw-r--r-- | server/src/matcher/vm.lua | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/server/src/matcher/vm.lua b/server/src/matcher/vm.lua index c2fd0e73..b73aa100 100644 --- a/server/src/matcher/vm.lua +++ b/server/src/matcher/vm.lua @@ -196,9 +196,14 @@ function mt:mergeValue(a, b, mark) if mark[a] or mark[b] then return end + if a.uri ~= self.uri then + return + end mark[a] = true mark[b] = true - self:mergeChild(a, b, mark) + if b.uri == self.uri then + self:mergeChild(a, b, mark) + end for k in pairs(a) do a[k] = nil end |