From 8c965c8f0d93ccbb725a61c36b0a16f231961f99 Mon Sep 17 00:00:00 2001 From: Kearwood Gilbert Date: Wed, 27 Aug 2014 22:06:09 -0700 Subject: [PATCH] Fixed race condition that could result in the texture and mesh streamer miscalculating the amount of GPU memory available for new asset uploads --- KREngine/kraken/KRMeshManager.cpp | 2 ++ KREngine/kraken/KRTextureManager.cpp | 2 ++ 2 files changed, 4 insertions(+) diff --git a/KREngine/kraken/KRMeshManager.cpp b/KREngine/kraken/KRMeshManager.cpp index 42ea761..a3c7910 100644 --- a/KREngine/kraken/KRMeshManager.cpp +++ b/KREngine/kraken/KRMeshManager.cpp @@ -276,6 +276,8 @@ void KRMeshManager::doStreaming(long &memoryRemaining, long &memoryRemainingThis m_streamerFenceMutex.lock(); m_streamerComplete = true; m_streamerFenceMutex.unlock(); + } else { + memoryRemaining -= getMemUsed(); } } diff --git a/KREngine/kraken/KRTextureManager.cpp b/KREngine/kraken/KRTextureManager.cpp index 93ac00f..79ac0ba 100644 --- a/KREngine/kraken/KRTextureManager.cpp +++ b/KREngine/kraken/KRTextureManager.cpp @@ -320,6 +320,8 @@ void KRTextureManager::doStreaming(long &memoryRemaining, long &memoryRemainingT m_streamerFenceMutex.lock(); m_streamerComplete = true; m_streamerFenceMutex.unlock(); + } else { + memoryRemaining -= getMemUsed(); } }