diff --git a/common/src/main/java/dev/architectury/event/EventFactory.java b/common/src/main/java/dev/architectury/event/EventFactory.java index 37270fa5..9dc3cd3f 100644 --- a/common/src/main/java/dev/architectury/event/EventFactory.java +++ b/common/src/main/java/dev/architectury/event/EventFactory.java @@ -197,7 +197,7 @@ public static Event> attachToForgeEventActorCancellable(Event< private static class EventImpl implements Event { private final Function, T> function; private T invoker = null; - private ArrayList listeners; + private List listeners; public EventImpl(Function, T> function) { this.function = function; @@ -221,7 +221,9 @@ public void register(T listener) { @Override public void unregister(T listener) { listeners.remove(listener); - listeners.trimToSize(); + if(listeners instanceof ArrayList arrayListListeners) { + arrayListListeners.trimToSize(); + } invoker = null; } @@ -233,7 +235,9 @@ public boolean isRegistered(T listener) { @Override public void clearListeners() { listeners.clear(); - listeners.trimToSize(); + if(listeners instanceof ArrayList arrayListListeners) { + arrayListListeners.trimToSize(); + } invoker = null; }