mirror of
https://github.com/LeavesMC/Leaves.git
synced 2025-12-21 15:59:33 +00:00
63 lines
3.4 KiB
Diff
63 lines
3.4 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: violetc <58360096+s-yh-china@users.noreply.github.com>
|
|
Date: Thu, 20 Jul 2023 15:03:28 +0800
|
|
Subject: [PATCH] Reduce array allocations
|
|
|
|
This patch is Powered by Gale(https://github.com/GaleMC/Gale)
|
|
|
|
diff --git a/src/main/java/io/papermc/paper/command/subcommands/VersionCommand.java b/src/main/java/io/papermc/paper/command/subcommands/VersionCommand.java
|
|
index 58ca24715eafd1ac3cc9657b1cc235049d69bb59..99d78a2e321f0703e0e5048c30ff7b0b7219aa8b 100644
|
|
--- a/src/main/java/io/papermc/paper/command/subcommands/VersionCommand.java
|
|
+++ b/src/main/java/io/papermc/paper/command/subcommands/VersionCommand.java
|
|
@@ -7,6 +7,7 @@ import org.bukkit.command.CommandSender;
|
|
import org.checkerframework.checker.nullness.qual.NonNull;
|
|
import org.checkerframework.checker.nullness.qual.Nullable;
|
|
import org.checkerframework.framework.qual.DefaultQualifier;
|
|
+import org.leavesmc.leaves.util.ArrayConstants;
|
|
|
|
@DefaultQualifier(NonNull.class)
|
|
public final class VersionCommand implements PaperSubcommand {
|
|
@@ -14,7 +15,7 @@ public final class VersionCommand implements PaperSubcommand {
|
|
public boolean execute(final CommandSender sender, final String subCommand, final String[] args) {
|
|
final @Nullable Command redirect = MinecraftServer.getServer().server.getCommandMap().getCommand("version");
|
|
if (redirect != null) {
|
|
- redirect.execute(sender, "paper", new String[0]);
|
|
+ redirect.execute(sender, "paper", ArrayConstants.emptyStringArray); // Leaves - reduce array allocations
|
|
}
|
|
return true;
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftEntityEquipment.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftEntityEquipment.java
|
|
index 4abe58077fae4e68cceda9624fed013bca1d6f22..02e8ddbe4cbde3924e19f8e972be42d04ad7c39c 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftEntityEquipment.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftEntityEquipment.java
|
|
@@ -165,7 +165,7 @@ public class CraftEntityEquipment implements EntityEquipment {
|
|
|
|
@Override
|
|
public void clear() {
|
|
- for (net.minecraft.world.entity.EquipmentSlot slot : net.minecraft.world.entity.EquipmentSlot.values()) {
|
|
+ for (net.minecraft.world.entity.EquipmentSlot slot : net.minecraft.world.entity.EquipmentSlot.VALUES) { // Leaves - reduce array allocations
|
|
this.setEquipment(slot, null, false);
|
|
}
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/util/WeakCollection.java b/src/main/java/org/bukkit/craftbukkit/util/WeakCollection.java
|
|
index 306ca8db11d16a03ce73b9a5a8be7efc11ee4b57..a599a5c40bb7e67cfe4ca9085268f60afe5b0893 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/util/WeakCollection.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/util/WeakCollection.java
|
|
@@ -6,6 +6,7 @@ import java.util.ArrayList;
|
|
import java.util.Collection;
|
|
import java.util.Iterator;
|
|
import java.util.NoSuchElementException;
|
|
+import org.leavesmc.leaves.util.ArrayConstants;
|
|
|
|
public final class WeakCollection<E> implements Collection<E> {
|
|
static final Object NO_VALUE = new Object();
|
|
@@ -164,7 +165,7 @@ public final class WeakCollection<E> implements Collection<E> {
|
|
|
|
@Override
|
|
public Object[] toArray() {
|
|
- return this.toArray(new Object[0]);
|
|
+ return this.toArray(ArrayConstants.emptyObjectArray); // Leaves - reduce array allocations
|
|
}
|
|
|
|
@Override
|