Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/base/StarAssets.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/base/StarAssets.cpp')
-rw-r--r--source/base/StarAssets.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/source/base/StarAssets.cpp b/source/base/StarAssets.cpp
index ecd2068..7db8efe 100644
--- a/source/base/StarAssets.cpp
+++ b/source/base/StarAssets.cpp
@@ -348,6 +348,13 @@ Assets::~Assets() {
m_workerThreads.clear();
}
+void Assets::hotReload() const {
+ MutexLocker assetsLocker(m_assetsMutex);
+ m_assetsCache.clear();
+ m_queue.clear();
+ m_framesSpecifications.clear();
+}
+
StringList Assets::assetSources() const {
MutexLocker assetsLocker(m_assetsMutex);
return m_assetSources;
@@ -779,6 +786,11 @@ void Assets::workerMain() {
if (m_stopThreads)
break;
+ {
+ RecursiveMutexLocker luaLocker(m_luaMutex);
+ as<LuaEngine>(m_luaEngine.get())->collectGarbage();
+ }
+
MutexLocker assetsLocker(m_assetsMutex);
AssetId assetId;