diff --git a/Engine/source/T3D/assets/ShapeAsset.cpp b/Engine/source/T3D/assets/ShapeAsset.cpp index 1f667fb6f..acf35eaef 100644 --- a/Engine/source/T3D/assets/ShapeAsset.cpp +++ b/Engine/source/T3D/assets/ShapeAsset.cpp @@ -440,9 +440,12 @@ U32 ShapeAsset::getAssetById(StringTableEntry assetId, AssetPtr* sha //Didn't work, so have us fall back to a placeholder asset StringTableEntry noShapeId = StringTable->insert("Core_Rendering:noshape"); shapeAsset->setAssetId(noShapeId); - (*shapeAsset)->mLoadedState = AssetErrCode::UsingFallback; + if (shapeAsset->notNull()) + { + (*shapeAsset)->mLoadedState = AssetErrCode::UsingFallback; return AssetErrCode::UsingFallback; + } return AssetErrCode::Failed; } diff --git a/Engine/source/T3D/assets/assetImporter.cpp b/Engine/source/T3D/assets/assetImporter.cpp index 4729f63a3..bddc064f2 100644 --- a/Engine/source/T3D/assets/assetImporter.cpp +++ b/Engine/source/T3D/assets/assetImporter.cpp @@ -2073,7 +2073,7 @@ void AssetImporter::validateAsset(AssetImportObject* assetItem) ModuleDefinition* moduleDef = AssetDatabase.getAssetModuleDefinition(assetId); - if (moduleDef->getModuleId() != StringTable->insert(targetModuleId.c_str())) + if ((moduleDef == NULL) || moduleDef->getModuleId() != StringTable->insert(targetModuleId.c_str())) continue; StringTableEntry assetName = AssetDatabase.getAssetName(assetId); @@ -2990,7 +2990,7 @@ Torque::Path AssetImporter::importShapeAsset(AssetImportObject* assetItem) { constructor = new TSShapeConstructor(qualifiedToFile); - String constructorName = assetItem->filePath.getFileName() + "_" + assetItem->filePath.getExtension().substr(0, 3); + String constructorName = assetItem->filePath.getFileName() + assetItem->filePath.getExtension().substr(0, 3); constructorName.replace(" ", "_"); constructorName.replace("-", "_"); constructorName.replace(".", "_");