diff --git a/code/ACLoader.cpp b/code/ACLoader.cpp index d3f45918a..47f0b8622 100644 --- a/code/ACLoader.cpp +++ b/code/ACLoader.cpp @@ -274,6 +274,9 @@ void AC3DImporter::LoadObjectSection(std::vector& objects) SkipSpaces(&buffer); unsigned int t = strtoul10(buffer,&buffer); + if (t >= std::numeric_limits::max() / sizeof(aiVector3D)) { + throw DeadlyImportError("AC3D: Too many vertices, would run out of memory"); + } obj.vertices.reserve(t); for (unsigned int i = 0; i < t;++i) {