diff options
author | Kae <80987908+Novaenia@users.noreply.github.com> | 2024-06-01 21:32:27 +1000 |
---|---|---|
committer | Kae <80987908+Novaenia@users.noreply.github.com> | 2024-06-01 21:32:27 +1000 |
commit | 41bad6c97c60918af640e8d4c558316edd1bd9c7 (patch) | |
tree | c6d3ef152e17c06947a4003af7ffe7ef5827a638 /source/game/StarMaterialDatabase.hpp | |
parent | a88b1e4ce07ad7aceb01babc232c43630fea85d2 (diff) |
fix MaterialDatabase::radiantLight null deref when material/matmod ID does not exist
Diffstat (limited to 'source/game/StarMaterialDatabase.hpp')
-rw-r--r-- | source/game/StarMaterialDatabase.hpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/game/StarMaterialDatabase.hpp b/source/game/StarMaterialDatabase.hpp index 8e4f350..b890e30 100644 --- a/source/game/StarMaterialDatabase.hpp +++ b/source/game/StarMaterialDatabase.hpp @@ -239,13 +239,13 @@ inline Vec3F MaterialDatabase::radiantLight(MaterialId materialId, ModId modId) Vec3F radiantLight; if (materialId < m_materials.size()) { auto const& mat = m_materials[materialId]; - if (mat->materialRenderProfile) + if (mat && mat->materialRenderProfile) radiantLight += mat->materialRenderProfile->radiantLight; } if (modId < m_mods.size()) { - auto const& mat = m_mods[modId]; - if (mat->modRenderProfile) - radiantLight += mat->modRenderProfile->radiantLight; + auto const& mod = m_mods[modId]; + if (mod && mod->modRenderProfile) + radiantLight += mod->modRenderProfile->radiantLight; } return radiantLight; } |