diff options
| author | Lioncash <mathew1800@gmail.com> | 2015-12-20 21:49:49 -0500 |
|---|---|---|
| committer | Lioncash <mathew1800@gmail.com> | 2015-12-20 22:40:37 -0500 |
| commit | f2951828335654d0993ead998b3c547f903501dd (patch) | |
| tree | acf56e852bc06711f07382821f9d115fea060b00 /Source/Core/VideoCommon/TextureCacheBase.cpp | |
| parent | 1fbab188adafaf46e252837153cbfa3242a8d3c7 (diff) | |
VideoBackends: Simplify initialization and deinitialization of resources
Approximately three or four times now, the issue of pointers being
in an inconsistent state been an issue in the video backend renderers
with regards to tripping up other developers.
Global (ugh) resources are put into a unique_ptr and will always have a
well-defined state of being - null or not null
Diffstat (limited to 'Source/Core/VideoCommon/TextureCacheBase.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/TextureCacheBase.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/Core/VideoCommon/TextureCacheBase.cpp b/Source/Core/VideoCommon/TextureCacheBase.cpp index 80b8b12ea6..341977d7a8 100644 --- a/Source/Core/VideoCommon/TextureCacheBase.cpp +++ b/Source/Core/VideoCommon/TextureCacheBase.cpp @@ -3,6 +3,7 @@ // Refer to the license.txt file included. #include <algorithm> +#include <memory> #include <string> #include "Common/FileUtil.h" @@ -28,7 +29,7 @@ static const int TEXTURE_KILL_THRESHOLD = 64; // Sonic the Fighters (inside Soni static const int TEXTURE_POOL_KILL_THRESHOLD = 3; static const int FRAMECOUNT_INVALID = 0; -TextureCacheBase* g_texture_cache; +std::unique_ptr<TextureCacheBase> g_texture_cache; alignas(16) u8* TextureCacheBase::temp = nullptr; size_t TextureCacheBase::temp_size; |
