From 955aa3aee084cdc50a41a64b2a528a520a9f34dd Mon Sep 17 00:00:00 2001 From: Eclipse Date: Thu, 5 Jun 2025 12:55:16 +0000 Subject: [PATCH] Fix incorrectly converting MCPL to Geyser holdersets (#5577) --- .../geysermc/geyser/session/cache/tags/GeyserHolderSet.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/org/geysermc/geyser/session/cache/tags/GeyserHolderSet.java b/core/src/main/java/org/geysermc/geyser/session/cache/tags/GeyserHolderSet.java index 227436efc..253cc061c 100644 --- a/core/src/main/java/org/geysermc/geyser/session/cache/tags/GeyserHolderSet.java +++ b/core/src/main/java/org/geysermc/geyser/session/cache/tags/GeyserHolderSet.java @@ -37,6 +37,7 @@ import org.geysermc.mcprotocollib.protocol.data.game.item.component.HolderSet; import java.util.List; import java.util.Objects; +import java.util.Optional; import java.util.function.ToIntFunction; /** @@ -72,7 +73,8 @@ public final class GeyserHolderSet { * Constructs a {@link GeyserHolderSet} from a MCPL HolderSet. */ public static GeyserHolderSet fromHolderSet(JavaRegistryKey registry, @NonNull HolderSet holderSet) { - return new GeyserHolderSet<>(registry, new Tag<>(registry, holderSet.getLocation()), holderSet.getHolders()); + Tag tag = holderSet.getLocation() == null ? null : new Tag<>(registry, holderSet.getLocation()); + return new GeyserHolderSet<>(registry, tag, holderSet.getHolders()); } /**