summaryrefslogtreecommitdiff
path: root/src/resources
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2013-05-13 00:57:07 +0300
committerAndrei Karas <akaras@inbox.ru>2013-05-13 00:57:07 +0300
commit84a3ff2804a2df97a9b95d033b2c35de73271972 (patch)
treed880b4ebe54674c8f3280c3d698fd4b3b0955563 /src/resources
parent68a06297d94c0a2780b0bbb4070813f931cdfc24 (diff)
downloadmanaplus-84a3ff2804a2df97a9b95d033b2c35de73271972.tar.gz
manaplus-84a3ff2804a2df97a9b95d033b2c35de73271972.tar.bz2
manaplus-84a3ff2804a2df97a9b95d033b2c35de73271972.tar.xz
manaplus-84a3ff2804a2df97a9b95d033b2c35de73271972.zip
also clear resource cache if switching servers.
Diffstat (limited to 'src/resources')
-rw-r--r--src/resources/resourcemanager.cpp7
-rw-r--r--src/resources/resourcemanager.h2
2 files changed, 9 insertions, 0 deletions
diff --git a/src/resources/resourcemanager.cpp b/src/resources/resourcemanager.cpp
index c8230550a..83beb8e9c 100644
--- a/src/resources/resourcemanager.cpp
+++ b/src/resources/resourcemanager.cpp
@@ -1151,3 +1151,10 @@ void ResourceManager::deleteFilesInDirectory(std::string path)
if (dir)
closedir(dir);
}
+
+void ResourceManager::clearCache()
+{
+ cleanProtected();
+ while (cleanOrphans(true))
+ continue;
+}
diff --git a/src/resources/resourcemanager.h b/src/resources/resourcemanager.h
index d45a4ba11..d56406bec 100644
--- a/src/resources/resourcemanager.h
+++ b/src/resources/resourcemanager.h
@@ -322,6 +322,8 @@ class ResourceManager final
Resource *getTempResource(const std::string &idPath) A_WARN_UNUSED;
+ void clearCache();
+
static void addDelayedAnimation(AnimationDelayLoad *const animation)
{ mDelayedAnimations.push_back(animation); }