Index: binary-improvements/MapRendering/Web/Handlers/ItemIconHandler.cs
===================================================================
--- binary-improvements/MapRendering/Web/Handlers/ItemIconHandler.cs	(revision 253)
+++ binary-improvements/MapRendering/Web/Handlers/ItemIconHandler.cs	(revision 254)
@@ -94,15 +94,18 @@
 					if (tintedIcons.ContainsKey (name)) {
 						foreach (Color c in tintedIcons [name]) {
-							Texture2D tintedTex = new Texture2D (data.width, data.height, TextureFormat.ARGB32, false);
+							string tintedName = name + "__" + AllocsUtils.ColorToHex (c);
+							if (!icons.ContainsKey (tintedName)) {
+								Texture2D tintedTex = new Texture2D (data.width, data.height, TextureFormat.ARGB32, false);
 
-							for (int x = 0; x < data.width; x++) {
-								for (int y = 0; y < data.height; y++) {
-									tintedTex.SetPixel (x, y, tex.GetPixel (x, y) * c);
+								for (int x = 0; x < data.width; x++) {
+									for (int y = 0; y < data.height; y++) {
+										tintedTex.SetPixel (x, y, tex.GetPixel (x, y) * c);
+									}
 								}
+
+								icons.Add (tintedName, tintedTex.EncodeToPNG ());
+
+								UnityEngine.Object.Destroy (tintedTex);
 							}
-
-							icons.Add (name + "__" + AllocsUtils.ColorToHex (c), tintedTex.EncodeToPNG ());
-
-							UnityEngine.Object.Destroy (tintedTex);
 						}
 					}
