|
@@ -112,7 +112,11 @@ bool glTF2Importer::CanRead(const std::string &filename, IOSystem *pIOHandler, b
|
|
|
|
|
|
if (pIOHandler) {
|
|
|
glTF2::Asset asset(pIOHandler);
|
|
|
- return asset.CanRead(filename, extension == "glb");
|
|
|
+ return asset.CanRead(
|
|
|
+ filename,
|
|
|
+ CheckMagicToken(
|
|
|
+ pIOHandler, filename, AI_GLB_MAGIC_NUMBER, 1, 0,
|
|
|
+ static_cast<unsigned int>(strlen(AI_GLB_MAGIC_NUMBER))));
|
|
|
}
|
|
|
|
|
|
return false;
|
|
@@ -1678,7 +1682,10 @@ void glTF2Importer::InternReadFile(const std::string &pFile, aiScene *pScene, IO
|
|
|
|
|
|
// read the asset file
|
|
|
glTF2::Asset asset(pIOHandler, static_cast<rapidjson::IRemoteSchemaDocumentProvider *>(mSchemaDocumentProvider));
|
|
|
- asset.Load(pFile, GetExtension(pFile) == "glb");
|
|
|
+ asset.Load(pFile,
|
|
|
+ CheckMagicToken(
|
|
|
+ pIOHandler, pFile, AI_GLB_MAGIC_NUMBER, 1, 0,
|
|
|
+ static_cast<unsigned int>(strlen(AI_GLB_MAGIC_NUMBER))));
|
|
|
if (asset.scene) {
|
|
|
pScene->mName = asset.scene->name;
|
|
|
}
|