@@ -660,13 +660,13 @@ void ObjFileParser::getMaterialLib() {
660
660
} else {
661
661
absName = strMatName;
662
662
}
663
-
664
- IOStream * pFile = m_pIO->Open (absName);
663
+
664
+ std::unique_ptr< IOStream> pFile ( m_pIO->Open (absName) );
665
665
if (nullptr == pFile) {
666
666
ASSIMP_LOG_ERROR (" OBJ: Unable to locate material file " , strMatName);
667
667
std::string strMatFallbackName = m_originalObjFileName.substr (0 , m_originalObjFileName.length () - 3 ) + " mtl" ;
668
668
ASSIMP_LOG_INFO (" OBJ: Opening fallback material file " , strMatFallbackName);
669
- pFile = m_pIO->Open (strMatFallbackName);
669
+ pFile. reset ( m_pIO->Open (strMatFallbackName) );
670
670
if (!pFile) {
671
671
ASSIMP_LOG_ERROR (" OBJ: Unable to locate fallback material file " , strMatFallbackName);
672
672
m_DataIt = skipLine<DataArrayIt>(m_DataIt, m_DataItEnd, m_uiLine);
@@ -679,8 +679,8 @@ void ObjFileParser::getMaterialLib() {
679
679
// material files if the model doesn't use any materials, so we
680
680
// allow that.
681
681
std::vector<char > buffer;
682
- BaseImporter::TextFileToBuffer (pFile, buffer, BaseImporter::ALLOW_EMPTY);
683
- m_pIO->Close (pFile);
682
+ BaseImporter::TextFileToBuffer (pFile. get () , buffer, BaseImporter::ALLOW_EMPTY);
683
+ // m_pIO->Close(pFile);
684
684
685
685
// Importing the material library
686
686
ObjFileMtlImporter mtlImporter (buffer, strMatName, m_pModel.get ());
0 commit comments