Paper/nms-patches/EntitySlice.patch
Thinkofdeath ee6d0fa938 SPIGOT-591: Optimize EntitySlice.iterator
Previously if the key 'this.c' was missing a new hashmap was created, this
caused thousands to be created each tick
2015-02-20 10:19:11 +00:00

23 lines
807 B
Diff

--- ../work/decompile-8eb82bde/net/minecraft/server/EntitySlice.java 2015-02-20 10:18:42.025023871 +0000
+++ src/main/java/net/minecraft/server/EntitySlice.java 2015-02-20 10:18:42.057023871 +0000
@@ -4,6 +4,7 @@
import com.google.common.collect.Multimap;
import com.google.common.collect.Sets;
import java.util.AbstractSet;
+import java.util.Collections;
import java.util.Iterator;
import java.util.Set;
import org.apache.commons.lang3.ClassUtils;
@@ -89,6 +90,11 @@
}
public Iterator iterator() {
+ // CraftBukkit start
+ if (!this.a.containsKey(this.c)) {
+ return Collections.EMPTY_LIST.iterator();
+ }
+ // CraftBukkit end
Iterator iterator = this.a.get(this.c).iterator();
return new EntitySliceInnerClass2(this, iterator);