summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2012-11-20 14:48:24 +0000
committerTed Trask <ttrask01@yahoo.com>2012-11-20 14:48:24 +0000
commitce414ec99ceb7a58e0c880d360d64f3de6c8fccc (patch)
tree7176b7ccbfbaeedd49fdb8f4717bb6b185133c72
parenta9c4b48455f601d9112f0afdf6cda7e593209936 (diff)
downloadacf-apk-tools-ce414ec99ceb7a58e0c880d360d64f3de6c8fccc.tar.bz2
acf-apk-tools-ce414ec99ceb7a58e0c880d360d64f3de6c8fccc.tar.xz
Fixed resetting menu / permissions when packages change
-rw-r--r--apk-model.lua18
1 files changed, 13 insertions, 5 deletions
diff --git a/apk-model.lua b/apk-model.lua
index 4d2cb79..59c994b 100644
--- a/apk-model.lua
+++ b/apk-model.lua
@@ -113,7 +113,8 @@ local repository = function()
end
-- Find all the packages that this package depends on (using recursion)
-function find_dependents(package)
+local find_dependents
+find_dependents = function(package)
repo = repo or repository()
if not repo[package] then
return {}
@@ -150,6 +151,11 @@ local function upgrade_available(package)
return retval
end
+local resetpermissions = function(self)
+ if self.sessiondata then self.sessiondata.menu = nil end
+ if self.sessiondata then self.sessiondata.permissions = nil end
+end
+
-- ################################################################################
-- PUBLIC FUNCTIONS
@@ -208,8 +214,7 @@ delete_package = function(self, deleterequest)
if success then
deleterequest.descr = res
-- Destroy menu and permissions info in session so recalculated
- if session then session.menu = nil end
- if session then session.permissions = nil end
+ resetpermissions(self)
else
deleterequest.errtxt = "Failed to delete package."
end
@@ -229,8 +234,7 @@ install_package = function(self, installrequest)
if success then
installrequest.descr = res
-- Destroy menu and permissions info in session so recalculated
- if session then session.menu = nil end
- if session then session.permissions = nil end
+ resetpermissions(self)
else
installrequest.errtxt = "Failed to install package."
end
@@ -252,6 +256,8 @@ upgrade_package = function(self, upgraderequest)
else
upgraderequest.errtxt = "Failed to upgrade package."
end
+ -- Destroy menu and permissions info in session so recalculated
+ resetpermissions(self)
return upgraderequest
end
@@ -291,6 +297,8 @@ upgrade_all = function(self, upgraderequest)
else
upgraderequest.errtxt = "Failed to upgrade packages."
end
+ -- Destroy menu and permissions info in session so recalculated
+ resetpermissions(self)
return upgraderequest
end