From 77bcf6cff397fc0f49c792270a8a8e55520f2f90 Mon Sep 17 00:00:00 2001 From: William Goodspeed Date: Sun, 18 Aug 2024 10:43:41 +0000 Subject: [PATCH] Allowing `hb.change_bar' called with hudbar uninitialized Calling `hb.change_bar' with hunger bar on damage disabled server will crash the server. To not overload other functions to check `enable_damage' over and over, simply make `hb.change_bar' able to be called with uninitialized identifiers. #4586 --- mods/HUD/hudbars/init.lua | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/mods/HUD/hudbars/init.lua b/mods/HUD/hudbars/init.lua index 7f86a959d..543692d51 100644 --- a/mods/HUD/hudbars/init.lua +++ b/mods/HUD/hudbars/init.lua @@ -330,9 +330,16 @@ function hb.change_hudbar(player, identifier, new_value, new_max_value, new_icon local name = player:get_player_name() local hudtable = hb.get_hudtable(identifier) + + -- hb.change_hudbar may be called with a non-existing hudbar like hunger. + if hudtable == nil then + return false + end + if not hudtable.hudstate[name] then return false end + local value_changed, max_changed = false, false if new_value then