mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-11-27 17:52:43 +00:00
lualoader: Add a loaded hook for others to execute upon config load
This will not be executed on reload, though later work could allow for that. It's intended/expected that later work won't generally need to happen on every config load, just once (for, e.g., menu initialization) or just when config is reloaded but not upon the initial load.
This commit is contained in:
parent
cbb009b9fe
commit
7aba5b2f6a
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=334723
@ -458,7 +458,7 @@ function config.selectKernel(kernel)
|
||||
config.kernel_selected = kernel
|
||||
end
|
||||
|
||||
function config.load(file)
|
||||
function config.load(file, reloading)
|
||||
if not file then
|
||||
file = "/boot/defaults/loader.conf"
|
||||
end
|
||||
@ -485,13 +485,16 @@ function config.load(file)
|
||||
config.module_path = loader.getenv("module_path")
|
||||
local verbose = loader.getenv("verbose_loading") or "no"
|
||||
config.verbose = verbose:lower() == "yes"
|
||||
if not reloading then
|
||||
hook.runAll("config.loaded")
|
||||
end
|
||||
end
|
||||
|
||||
-- Reload configuration
|
||||
function config.reload(file)
|
||||
modules = {}
|
||||
restoreEnv()
|
||||
config.load(file)
|
||||
config.load(file, true)
|
||||
hook.runAll("config.reloaded")
|
||||
end
|
||||
|
||||
@ -512,5 +515,6 @@ function config.loadelf()
|
||||
end
|
||||
end
|
||||
|
||||
hook.registerType("config.loaded")
|
||||
hook.registerType("config.reloaded")
|
||||
return config
|
||||
|
Loading…
Reference in New Issue
Block a user