Improved resource loader error message
Former-commit-id: 3a8c565551b38a2ec3311db3d134e641d46527f8
This commit is contained in:
parent
36cb681adc
commit
e617783999
|
|
@ -44,6 +44,7 @@ bool NzResourceLoader<Type, Parameters>::LoadFromFile(Type* resource, const NzSt
|
||||||
|
|
||||||
NzFile file(path); // Ouvert seulement en cas de besoin
|
NzFile file(path); // Ouvert seulement en cas de besoin
|
||||||
|
|
||||||
|
bool found = false;
|
||||||
for (auto loader = Type::s_loaders.begin(); loader != Type::s_loaders.end(); ++loader)
|
for (auto loader = Type::s_loaders.begin(); loader != Type::s_loaders.end(); ++loader)
|
||||||
{
|
{
|
||||||
ExtensionGetter isExtensionSupported = std::get<0>(*loader);
|
ExtensionGetter isExtensionSupported = std::get<0>(*loader);
|
||||||
|
|
@ -73,6 +74,7 @@ bool NzResourceLoader<Type, Parameters>::LoadFromFile(Type* resource, const NzSt
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
found = true;
|
||||||
if (fileLoader(resource, filePath, parameters))
|
if (fileLoader(resource, filePath, parameters))
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
@ -85,6 +87,7 @@ bool NzResourceLoader<Type, Parameters>::LoadFromFile(Type* resource, const NzSt
|
||||||
|
|
||||||
file.SetCursorPos(0);
|
file.SetCursorPos(0);
|
||||||
|
|
||||||
|
found = true;
|
||||||
if (streamLoader(resource, file, parameters))
|
if (streamLoader(resource, file, parameters))
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
@ -92,7 +95,10 @@ bool NzResourceLoader<Type, Parameters>::LoadFromFile(Type* resource, const NzSt
|
||||||
NazaraWarning("Loader failed");
|
NazaraWarning("Loader failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
NazaraError("Failed to load file: no loader");
|
if (found)
|
||||||
|
NazaraError("Failed to load file: all loaders failed");
|
||||||
|
else
|
||||||
|
NazaraError("Failed to load file: no loader found");
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
@ -123,6 +129,7 @@ bool NzResourceLoader<Type, Parameters>::LoadFromStream(Type* resource, NzInputS
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
nzUInt64 streamPos = stream.GetCursorPos();
|
nzUInt64 streamPos = stream.GetCursorPos();
|
||||||
|
bool found = false;
|
||||||
for (auto loader = Type::s_loaders.begin(); loader != Type::s_loaders.end(); ++loader)
|
for (auto loader = Type::s_loaders.begin(); loader != Type::s_loaders.end(); ++loader)
|
||||||
{
|
{
|
||||||
StreamChecker checkFunc = std::get<1>(*loader);
|
StreamChecker checkFunc = std::get<1>(*loader);
|
||||||
|
|
@ -138,13 +145,18 @@ bool NzResourceLoader<Type, Parameters>::LoadFromStream(Type* resource, NzInputS
|
||||||
stream.SetCursorPos(streamPos);
|
stream.SetCursorPos(streamPos);
|
||||||
|
|
||||||
// Chargement de la ressource
|
// Chargement de la ressource
|
||||||
|
found = true;
|
||||||
if (streamLoader(resource, stream, parameters))
|
if (streamLoader(resource, stream, parameters))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
NazaraWarning("Loader failed");
|
NazaraWarning("Loader failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
NazaraError("Failed to load file: no loader");
|
if (found)
|
||||||
|
NazaraError("Failed to load file: all loaders failed");
|
||||||
|
else
|
||||||
|
NazaraError("Failed to load file: no loader found");
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -162,7 +174,7 @@ void NzResourceLoader<Type, Parameters>::RegisterLoader(ExtensionGetter extensio
|
||||||
}
|
}
|
||||||
else if (!fileLoader)
|
else if (!fileLoader)
|
||||||
{
|
{
|
||||||
NazaraError("Neither FileLoader nor StreamLoader were found");
|
NazaraError("Neither FileLoader nor StreamLoader were present");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue