Fixed crash on Utility uninitialisation
Former-commit-id: ef9f53674fe21c4d7780e68c62f7981554663a85
This commit is contained in:
parent
cfe1bcf107
commit
9662f4167d
|
|
@ -16,6 +16,8 @@ class NAZARA_API NzGuillotineTextureAtlas : public NzGuillotineImageAtlas
|
|||
NzGuillotineTextureAtlas() = default;
|
||||
~NzGuillotineTextureAtlas() = default;
|
||||
|
||||
nzUInt32 GetStorage() const;
|
||||
|
||||
private:
|
||||
NzAbstractImage* ResizeImage(NzAbstractImage* oldImage, const NzVector2ui& size) const override;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@
|
|||
#include <Nazara/Prerequesites.hpp>
|
||||
#include <Nazara/Core/SparsePtr.hpp>
|
||||
#include <Nazara/Math/Rect.hpp>
|
||||
#include <Nazara/Utility/Enums.hpp>
|
||||
#include <unordered_map>
|
||||
|
||||
class NzAbstractImage;
|
||||
|
|
@ -29,6 +30,7 @@ class NAZARA_API NzAbstractAtlas
|
|||
virtual void Free(NzSparsePtr<const NzRectui> rects, NzSparsePtr<unsigned int> layers, unsigned int count) = 0;
|
||||
virtual NzAbstractImage* GetLayer(unsigned int layerIndex) const = 0;
|
||||
virtual unsigned int GetLayerCount() const = 0;
|
||||
virtual nzUInt32 GetStorage() const = 0;
|
||||
virtual bool Insert(const NzImage& image, NzRectui* rect, bool* flipped, unsigned int* layerIndex) = 0;
|
||||
|
||||
void RemoveListener(Listener* font) const;
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@ class NAZARA_API NzGuillotineImageAtlas : public NzAbstractAtlas
|
|||
NzGuillotineBinPack::GuillotineSplitHeuristic GetRectSplitHeuristic() const;
|
||||
NzAbstractImage* GetLayer(unsigned int layerIndex) const;
|
||||
unsigned int GetLayerCount() const;
|
||||
nzUInt32 GetStorage() const;
|
||||
|
||||
bool Insert(const NzImage& image, NzRectui* rect, bool* flipped, unsigned int* layerIndex);
|
||||
|
||||
|
|
|
|||
|
|
@ -95,6 +95,10 @@ void NzGraphics::Uninitialize()
|
|||
// Libération du module
|
||||
s_moduleReferenceCounter = 0;
|
||||
|
||||
// Libération de l'atlas s'il vient de nous
|
||||
if (NzFont::GetDefaultAtlas()->GetStorage() & nzDataStorage_Hardware)
|
||||
NzFont::SetDefaultAtlas(nullptr);
|
||||
|
||||
// Loaders
|
||||
NzLoaders_Mesh_Unregister();
|
||||
NzLoaders_OBJ_Unregister();
|
||||
|
|
|
|||
|
|
@ -7,6 +7,11 @@
|
|||
#include <Nazara/Renderer/Texture.hpp>
|
||||
#include <Nazara/Graphics/Debug.hpp>
|
||||
|
||||
nzUInt32 NzGuillotineTextureAtlas::GetStorage() const
|
||||
{
|
||||
return nzDataStorage_Hardware;
|
||||
}
|
||||
|
||||
NzAbstractImage* NzGuillotineTextureAtlas::ResizeImage(NzAbstractImage* oldImage, const NzVector2ui& size) const
|
||||
{
|
||||
std::unique_ptr<NzTexture> newTexture(new NzTexture);
|
||||
|
|
|
|||
|
|
@ -73,6 +73,11 @@ unsigned int NzGuillotineImageAtlas::GetLayerCount() const
|
|||
return m_layers.size();
|
||||
}
|
||||
|
||||
nzUInt32 NzGuillotineImageAtlas::GetStorage() const
|
||||
{
|
||||
return nzDataStorage_Software;
|
||||
}
|
||||
|
||||
bool NzGuillotineImageAtlas::Insert(const NzImage& image, NzRectui* rect, bool* flipped, unsigned int* layerIndex)
|
||||
{
|
||||
if (m_layers.empty())
|
||||
|
|
|
|||
Loading…
Reference in New Issue