summaryrefslogtreecommitdiffstats
path: root/config/update_device.lua
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2015-01-12 16:11:26 +0000
committerTed Trask <ttrask01@yahoo.com>2015-01-12 16:11:26 +0000
commitaf55ecb73277b61a8642fc6bea091291ecc926bf (patch)
tree4b5eceb2c44db9cf2e73ae9a93d62905821d681a /config/update_device.lua
parent207a204bb95ceba5017a91c340b53ef12c0811d8 (diff)
downloadacf-provisioning-af55ecb73277b61a8642fc6bea091291ecc926bf.tar.bz2
acf-provisioning-af55ecb73277b61a8642fc6bea091291ecc926bf.tar.xz
Remove setfenv call for Lua 5.2 compatibility
Diffstat (limited to 'config/update_device.lua')
-rw-r--r--config/update_device.lua16
1 files changed, 11 insertions, 5 deletions
diff --git a/config/update_device.lua b/config/update_device.lua
index 302b3a7..cb575e9 100644
--- a/config/update_device.lua
+++ b/config/update_device.lua
@@ -4,11 +4,17 @@ local functions, device, olddevice, params, oldparams = ...
--functions.logevent("got to update_device script")
-- We'll handle the changing of the device by handling the resulting changing of the params
+local f
local env = {}
setmetatable (env, {__index = _G})
--- loadfile loads into the global environment
--- so we set env 0, not env 1
-setfenv (0, env)
-local f = loadfile("/etc/provisioning/update_device_params.lua")
+local IS_52_LOAD = pcall(load, '')
+if IS_52_LOAD then
+ local f = loadfile("/etc/provisioning/update_device_params.lua", "bt", env)
+else
+ -- loadfile loads into the global environment
+ -- so we set env 0, not env 1
+ setfenv (0, env)
+ local f = loadfile("/etc/provisioning/update_device_params.lua")
+ setfenv (0, _G)
+end
if (f) then f(functions, params, oldparams) end
-setfenv (0, _G)