Fail gracefully if main_menu_script has bad value (#10938)

Builtin: Move :close() before dofile
This commit is contained in:
Wuzzy 2021-02-19 18:59:48 +00:00 committed by Nils Dagsson Moskopp
parent a2a808e3b4
commit 49b2479968
Signed by: erlehmann
GPG Key ID: A3BC671C35191080
1 changed files with 13 additions and 2 deletions

View File

@ -39,9 +39,20 @@ if INIT == "game" then
assert(not core.get_http_api)
elseif INIT == "mainmenu" then
local mm_script = core.settings:get("main_menu_script")
local custom_loaded = false
if mm_script and mm_script ~= "" then
dofile(mm_script)
else
local testfile = io.open(mm_script, "r")
if testfile then
testfile:close()
dofile(mm_script)
custom_loaded = true
core.log("info", "Loaded custom main menu script: "..mm_script)
else
core.log("error", "Failed to load custom main menu script: "..mm_script)
core.log("info", "Falling back to default main menu script")
end
end
if not custom_loaded then
dofile(core.get_mainmenu_path() .. DIR_DELIM .. "init.lua")
end
elseif INIT == "async" then