From fb5b5e9d40b15b7f502e5c7cd99521d9b5e21eba Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Tue, 21 Sep 2021 11:06:18 +0200 Subject: [PATCH] Fix possible nullptr dereferencing in material parsing * Return 0.0f for empty buffer * closes https://github.com/assimp/assimp/issues/3442 --- code/AssetLib/Obj/ObjFileMtlImporter.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/code/AssetLib/Obj/ObjFileMtlImporter.cpp b/code/AssetLib/Obj/ObjFileMtlImporter.cpp index 94e57c26b..6a81fb082 100644 --- a/code/AssetLib/Obj/ObjFileMtlImporter.cpp +++ b/code/AssetLib/Obj/ObjFileMtlImporter.cpp @@ -232,6 +232,12 @@ void ObjFileMtlImporter::getIlluminationModel(int &illum_model) { // Loads a single float value. void ObjFileMtlImporter::getFloatValue(ai_real &value) { m_DataIt = CopyNextWord(m_DataIt, m_DataItEnd, &m_buffer[0], BUFFERSIZE); + size_t len = std::strlen(&m_buffer[0]); + if (0 == len) { + value = 0.0f; + return; + } + value = (ai_real)fast_atof(&m_buffer[0]); }