lualoader: Don't assume that {module}_load is set

The previous iteration of this assumed that {module}_load was set. In the
old world order of default loader.conf(5), this was probably a safe
assumption given that we had almost every module explicitly not-loaded in
it.

In the new world order, this is no longer the case, so one could delete a
_load line inadvertently while leaving a _name, _type, _flags, _before,
_after, or _error. This would have caused a confusing Lua error and borked
module loading.
This commit is contained in:
Kyle Evans 2018-03-31 23:49:00 +00:00
parent 9c2d9b9e6d
commit 509b21c338
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=331855

View file

@ -205,6 +205,9 @@ local function loadModule(mod, silent)
local status = true
local pstatus
for k, v in pairs(mod) do
if v.load == nil then
goto continue
end
if v.load:lower() == "yes" then
local str = "load "
if v.flags ~= nil then
@ -232,6 +235,7 @@ local function loadModule(mod, silent)
end
if v.error ~= nil then
cli_execute_unparsed(v.error)
end
status = false
end
@ -249,6 +253,7 @@ local function loadModule(mod, silent)
-- print("Skipping module '". . k .. "'")
-- end
end
::continue::
end
return status