From 7781fe5781dd8de2632192df17c7d31898bf8947 Mon Sep 17 00:00:00 2001 From: #Momo <40578274+MomoDeve@users.noreply.github.com> Date: Wed, 21 Oct 2020 23:21:50 +0300 Subject: [PATCH] MSVC crash workaround I do not know why, but the following line causes crash if assimp was compiled using MSVC with RelWithDebInfo configuration: `std::transform(shading.begin(), shading.end(), shading.begin(), Assimp::ToLower);` replacing `shading.begin()` with `shading.data()` fixes this issue. --- code/AssetLib/FBX/FBXMaterial.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/AssetLib/FBX/FBXMaterial.cpp b/code/AssetLib/FBX/FBXMaterial.cpp index 9679e62a5..6296b2a56 100644 --- a/code/AssetLib/FBX/FBXMaterial.cpp +++ b/code/AssetLib/FBX/FBXMaterial.cpp @@ -86,7 +86,7 @@ Material::Material(uint64_t id, const Element& element, const Document& doc, con std::string templateName; // lower-case shading because Blender (for example) writes "Phong" - std::transform(shading.begin(), shading.end(), shading.begin(), Assimp::ToLower); + std::transform(shading.data(), shading.data() + shading.size(), shading.data(), Assimp::ToLower); if(shading == "phong") { templateName = "Material.FbxSurfacePhong"; }