From: "Enrico Weigelt, metux IT consult" <[email protected]>
---
.../freecol/common/resources/ResourceManager.java | 28 ++++++++++------------
.../freecol/common/resources/ResourceMapping.java | 10 ++++++++
2 files changed, 22 insertions(+), 16 deletions(-)
diff --git a/src/net/sf/freecol/common/resources/ResourceManager.java
b/src/net/sf/freecol/common/resources/ResourceManager.java
index 00638a5ba70..97939d5e414 100644
--- a/src/net/sf/freecol/common/resources/ResourceManager.java
+++ b/src/net/sf/freecol/common/resources/ResourceManager.java
@@ -123,22 +123,18 @@ public class ResourceManager {
* Clean up easily replaced modified copies in caches.
*/
public static synchronized void clean() {
- if (baseMapping != null) {
- forEachMapEntry(baseMapping.getImageResources(),
- e -> e.getValue().clean());
- }
- if (tcMapping != null) {
- forEachMapEntry(tcMapping.getImageResources(),
- e -> e.getValue().clean());
- }
- if (scenarioMapping != null) {
- forEachMapEntry(scenarioMapping.getImageResources(),
- e -> e.getValue().clean());
- }
- if (modMapping != null) {
- forEachMapEntry(modMapping.getImageResources(),
- e -> e.getValue().clean());
- }
+ if (baseMapping != null)
+ baseMapping.cleanImageResources();
+
+ if (tcMapping != null)
+ tcMapping.cleanImageResources();
+
+ if (scenarioMapping != null)
+ scenarioMapping.cleanImageResources();
+
+ if (modMapping != null)
+ modMapping.cleanImageResources();
+
System.gc();
}
diff --git a/src/net/sf/freecol/common/resources/ResourceMapping.java
b/src/net/sf/freecol/common/resources/ResourceMapping.java
index 8930c056784..d664d8f104b 100644
--- a/src/net/sf/freecol/common/resources/ResourceMapping.java
+++ b/src/net/sf/freecol/common/resources/ResourceMapping.java
@@ -320,4 +320,14 @@ public final class ResourceMapping {
return transform(imageResources.keySet(), k -> k.startsWith(prefix),
Function.identity(), Collectors.toSet());
}
+
+ /**
+ * Clean out image resources
+ */
+ public void cleanImageResources() {
+ for (ImageResource value : imageResources.values()) {
+ if (value != null)
+ value.clean();
+ }
+ }
}
--
2.11.0.rc0.7.gbe5a750
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Freecol-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freecol-developers