Fixed resource preloading when format is invalid

This commit is contained in:
2015-10-22 15:19:32 +02:00
parent bdb5a76e24
commit 3f8a6d2f68
+9 -6
View File
@@ -125,11 +125,14 @@ dd::Resource* dd::ResourceManager::Load(std::string resourceType, std::string re
} else { } else {
LOG_WARNING("Hot-loading resource \"%s\"", resourceName.c_str()); LOG_WARNING("Hot-loading resource \"%s\"", resourceName.c_str());
if (m_Preloads.find(std::make_pair(resourceType, resourceName)) == m_Preloads.end()) { if (!resourceType.empty() && !resourceName.empty()) {
std::ofstream f("PreloadResources", std::ofstream::app); std::replace(resourceName.begin(), resourceName.end(), '\\', '/');
f << resourceType << " " << resourceName << std::endl; if (m_Preloads.find(std::make_pair(resourceType, resourceName)) == m_Preloads.end()) {
f.close(); std::ofstream f("PreloadResources", std::ofstream::app);
m_Preloads.insert(std::make_pair(resourceType, resourceName)); f << resourceType << " " << resourceName << std::endl;
f.close();
m_Preloads.insert(std::make_pair(resourceType, resourceName));
}
} }
} }
@@ -141,7 +144,7 @@ dd::Resource* dd::ResourceManager::CreateResource(std::string resourceType, std:
auto facIt = m_FactoryFunctions.find(resourceType); auto facIt = m_FactoryFunctions.find(resourceType);
if (facIt == m_FactoryFunctions.end()) if (facIt == m_FactoryFunctions.end())
{ {
LOG_ERROR("Failed to load resource \"%s\" of type \"%s\": type not registered", resourceName.c_str(), resourceType); LOG_ERROR("Failed to load resource \"%s\" of type \"%s\": type not registered", resourceName.c_str(), resourceType.c_str());
return nullptr; return nullptr;
} }