diff --git a/paper-server/patches/sources/net/minecraft/core/Holder.java.patch b/paper-server/patches/sources/net/minecraft/core/Holder.java.patch index 51a81bf5f3..c1d6d57ceb 100644 --- a/paper-server/patches/sources/net/minecraft/core/Holder.java.patch +++ b/paper-server/patches/sources/net/minecraft/core/Holder.java.patch @@ -5,7 +5,7 @@ void bindTags(Collection> tags) { - this.tags = Set.copyOf(tags); -+ this.tags = java.util.Collections.unmodifiableSet(new it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet<>(tags)); // Paper ++ this.tags = it.unimi.dsi.fastutil.objects.ReferenceSets.unmodifiable(new it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet<>(tags)); // Paper - use reference set because TagKey are interned } @Override diff --git a/paper-server/patches/sources/net/minecraft/network/protocol/login/ServerboundCustomQueryAnswerPacket.java.patch b/paper-server/patches/sources/net/minecraft/network/protocol/login/ServerboundCustomQueryAnswerPacket.java.patch index 9596254f44..40b8fdbc78 100644 --- a/paper-server/patches/sources/net/minecraft/network/protocol/login/ServerboundCustomQueryAnswerPacket.java.patch +++ b/paper-server/patches/sources/net/minecraft/network/protocol/login/ServerboundCustomQueryAnswerPacket.java.patch @@ -7,9 +7,9 @@ - return readUnknownPayload(buffer); + // Paper start - MC Utils - default query payloads + FriendlyByteBuf buf = buffer.readNullable((buf2) -> { -+ int i = buf2.readableBytes(); -+ if (i >= 0 && i <= MAX_PAYLOAD_SIZE) { -+ return new FriendlyByteBuf(buf2.readBytes(i)); ++ int readableBytes = buf2.readableBytes(); ++ if (readableBytes >= 0 && readableBytes <= MAX_PAYLOAD_SIZE) { ++ return new FriendlyByteBuf(buf2.readBytes(readableBytes)); + } else { + throw new IllegalArgumentException("Payload may not be larger than " + MAX_PAYLOAD_SIZE + " bytes"); + }