summaryrefslogtreecommitdiffstats
path: root/aconf/transaction/init.lua
diff options
context:
space:
mode:
Diffstat (limited to 'aconf/transaction/init.lua')
-rw-r--r--aconf/transaction/init.lua9
1 files changed, 4 insertions, 5 deletions
diff --git a/aconf/transaction/init.lua b/aconf/transaction/init.lua
index faa5d7e..2aabec5 100644
--- a/aconf/transaction/init.lua
+++ b/aconf/transaction/init.lua
@@ -1,5 +1,5 @@
--[[
-Copyright (c) 2012-2014 Kaarle Ritvanen
+Copyright (c) 2012-2015 Kaarle Ritvanen
See LICENSE file for license details
--]]
@@ -68,13 +68,12 @@ function ModelTransaction:set_multiple(mods)
end
function ModelTransaction:check_deleted(path)
- -- assume one-level refs for now
- local top = root.topology(pth.parent(path))
+ local top = root.topology(path)
if top then
local errors = ErrorDict()
for _, refs in ipairs(top.referrers) do
- for _, ref in ipairs(self.root:search_refs(refs)) do
- errors:collect(ref.deleted, ref, path)
+ for _, ref in ipairs(getmetatable(self.root).escalate:search(refs)) do
+ errors:collect(ref.deleted, path)
end
end
errors:raise()