When you delete a server from your server list the entry is directly removed from the servers.dat file as well, however if you add a server with the same ip it uses the icon of the deleted server entry. This only seems to happen with the icon, but not with the name nor with the "Server Resource Packs" settings (maybe because they set their values as new values).
- Create a local server with the provided icon named icon.png in the world folder
- Start the server
- Client: Add a server entry with the ip localhost and refresh
The server should now use the icon
- Stop the server
- Client: Delete the server from your server list
- Client: Create a new server entry with the ip localhost
It should use the icon even though the server was not online
The following is based on decompiled version of Minecraft 1.8 using MCP. All method and class names are the names used in the decompiled version.
The reason why this happens is that the public void removeServerData(int p_78851_1_) method of the net.minecraft.client.multiplayer.ServerList class is not deleting the texture.
Fixing this probably requires a fix for MC-98707 as well as otherwise if two server with the same IP are listed and one of the is deleted, the other one showns a white image.
There might be other side effects when having two servers with the same IP.