diff options
Diffstat (limited to 'Source/Core/VideoCommon/Src/TextureCacheBase.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/Src/TextureCacheBase.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/Source/Core/VideoCommon/Src/TextureCacheBase.cpp b/Source/Core/VideoCommon/Src/TextureCacheBase.cpp index af53b0184b..47d2cf56c8 100644 --- a/Source/Core/VideoCommon/Src/TextureCacheBase.cpp +++ b/Source/Core/VideoCommon/Src/TextureCacheBase.cpp @@ -26,7 +26,7 @@ TextureCache *g_texture_cache; u8 *TextureCache::temp = NULL; TextureCache::TexCache TextureCache::textures; -Common::CriticalSection TextureCache::texMutex; +bool TextureCache::DeferredInvalidate; TextureCache::TCacheEntryBase::~TCacheEntryBase() { @@ -53,7 +53,6 @@ TextureCache::TextureCache() void TextureCache::Invalidate(bool shutdown) { - texMutex.Enter(); TexCache::iterator iter = textures.begin(), tcend = textures.end(); @@ -68,7 +67,13 @@ void TextureCache::Invalidate(bool shutdown) if(g_ActiveConfig.bHiresTextures && !g_ActiveConfig.bDumpTextures) HiresTextures::Init(SConfig::GetInstance().m_LocalCoreStartupParameter.m_strUniqueID.c_str()); SetHash64Function(g_ActiveConfig.bHiresTextures || g_ActiveConfig.bDumpTextures); - texMutex.Leave(); + + DeferredInvalidate = false; +} + +void TextureCache::InvalidateDefer() +{ + DeferredInvalidate = true; } TextureCache::~TextureCache() |
