ManagedTexture: CreateTextureFromFileData should not return a ManagedTexture object if it fails.

Alternatively, we should add even more checks around the code for empty
ManagedTextures...
This commit is contained in:
Henrik Rydgård committed 2018-11-19 08:27:46 +01:00
1 parent fed779e21a
commit 0bf44827b7
1 file changed
+7 -2
+7 -2
View File
@@ -200,6 +200,11 @@ std::unique_ptr<ManagedTexture> CreateTextureFromFileData(Draw::DrawContext *dra
if (!draw)
return std::unique_ptr<ManagedTexture>();
ManagedTexture *mtex = new ManagedTexture(draw);
mtex->LoadFromFileData(data, size, type, generateMips);
return std::unique_ptr<ManagedTexture>(mtex);
if (mtex->LoadFromFileData(data, size, type, generateMips)) {
return std::unique_ptr<ManagedTexture>(mtex);
} else {
// Best to return a null pointer if we fail!
delete mtex;
return std::unique_ptr<ManagedTexture>();
}
}