diff --git a/connector/src/main/java/org/geysermc/connector/skin/SkinProvider.java b/connector/src/main/java/org/geysermc/connector/skin/SkinProvider.java index 4b97ba5fb..ed18f2c22 100644 --- a/connector/src/main/java/org/geysermc/connector/skin/SkinProvider.java +++ b/connector/src/main/java/org/geysermc/connector/skin/SkinProvider.java @@ -163,7 +163,11 @@ public class SkinProvider { public static CompletableFuture requestSkin(UUID playerId, String textureUrl, boolean newThread) { if (textureUrl == null || textureUrl.isEmpty()) return CompletableFuture.completedFuture(EMPTY_SKIN); - if (requestedSkins.containsKey(textureUrl)) return requestedSkins.get(textureUrl); // already requested + CompletableFuture requestedSkin = requestedSkins.get(textureUrl); + if (requestedSkin != null) { + // already requested + return requestedSkin; + } Skin cachedSkin = getCachedSkin(textureUrl); if (cachedSkin != null) {