Fix Heap-buffer-overflow READ in ODDLParser::OpenDDLParser::parseFloatingLiteral
parent
60989a598e
commit
2c4942a74b
|
@ -301,14 +301,15 @@ void OpenGEXImporter::InternReadFile(const std::string &filename, aiScene *pScen
|
||||||
OpenDDLParser myParser;
|
OpenDDLParser myParser;
|
||||||
myParser.setLogCallback(&logDDLParserMessage);
|
myParser.setLogCallback(&logDDLParserMessage);
|
||||||
myParser.setBuffer(&buffer[0], buffer.size());
|
myParser.setBuffer(&buffer[0], buffer.size());
|
||||||
bool success(myParser.parse());
|
if (!myParser.parse()) {
|
||||||
if (success) {
|
throw DeadlyImportError("Failed to parse file ", filename);
|
||||||
m_ctx = myParser.getContext();
|
|
||||||
pScene->mRootNode = new aiNode;
|
|
||||||
pScene->mRootNode->mName.Set(filename);
|
|
||||||
handleNodes(m_ctx->m_root, pScene);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_ctx = myParser.getContext();
|
||||||
|
pScene->mRootNode = new aiNode;
|
||||||
|
pScene->mRootNode->mName.Set(filename);
|
||||||
|
handleNodes(m_ctx->m_root, pScene);
|
||||||
|
|
||||||
copyMeshes(pScene);
|
copyMeshes(pScene);
|
||||||
copyCameras(pScene);
|
copyCameras(pScene);
|
||||||
copyLights(pScene);
|
copyLights(pScene);
|
||||||
|
|
Loading…
Reference in New Issue