diff --git a/pom.xml b/pom.xml
index 275e8624..bedccf97 100644
--- a/pom.xml
+++ b/pom.xml
@@ -72,5 +72,5 @@
4.9.0
- r53
+ r54
\ No newline at end of file
diff --git a/src/com/vauff/maunzdiscord/core/Main.java b/src/com/vauff/maunzdiscord/core/Main.java
index c2bf958f..db51ff39 100644
--- a/src/com/vauff/maunzdiscord/core/Main.java
+++ b/src/com/vauff/maunzdiscord/core/Main.java
@@ -40,7 +40,7 @@ public class Main
{
public static GatewayDiscordClient gateway;
public static MongoDatabase mongoDatabase;
- public static String version = "r53";
+ public static String version = "r54";
public static Config cfg;
/**
diff --git a/src/com/vauff/maunzdiscord/servertracking/MapImageTimer.java b/src/com/vauff/maunzdiscord/servertracking/MapImageTimer.java
index ac444911..805baa3f 100644
--- a/src/com/vauff/maunzdiscord/servertracking/MapImageTimer.java
+++ b/src/com/vauff/maunzdiscord/servertracking/MapImageTimer.java
@@ -18,7 +18,7 @@
public class MapImageTimer
{
/**
- * Updates the mapImages hashmap with the latest available map images from vauff.com/mapimgs
+ * Updates the mapImages hashmap with the latest available map images from vauff.com and clears related caches
*/
public static Runnable timer = () ->
{
diff --git a/src/com/vauff/maunzdiscord/servertracking/MapImages.java b/src/com/vauff/maunzdiscord/servertracking/MapImages.java
index 14481596..aa86f4cb 100644
--- a/src/com/vauff/maunzdiscord/servertracking/MapImages.java
+++ b/src/com/vauff/maunzdiscord/servertracking/MapImages.java
@@ -43,13 +43,13 @@ public static String getMapImageURL(String map, int appId)
// Force lower case since GameTracker does, and for an accurate levenshtein distance
String mapLower = map.toLowerCase();
- if (mapImageLookupCache.containsKey(appId))
- {
- HashMap gameCache = mapImageLookupCache.get(appId);
+ if (!mapImageLookupCache.containsKey(appId))
+ mapImageLookupCache.put(appId, new HashMap<>());
- if (gameCache.containsKey(mapLower))
- return gameCache.get(mapLower);
- }
+ HashMap gameCache = mapImageLookupCache.get(appId);
+
+ if (gameCache.containsKey(mapLower))
+ return gameCache.get(mapLower);
String url = getVauffMapImageURL(mapLower, appId);
String gtName = appIdToGameTrackerName(appId);
@@ -58,8 +58,7 @@ public static String getMapImageURL(String map, int appId)
if (url.equals("") && !gtName.equals(""))
url = "https://image.gametracker.com/images/maps/160x120/" + gtName + "/" + mapLower.replace(" ", "%20") + ".jpg";
- if (mapImageLookupCache.containsKey(appId))
- mapImageLookupCache.get(appId).put(mapLower, url);
+ mapImageLookupCache.get(appId).put(mapLower, url);
return url;
}