From c872380e8a9e221324e69639a39bffb18fc8f883 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 29 Feb 2016 20:26:39 -0600 Subject: [PATCH] Fix ServerListPingEvent flagging as Async This event can sometimes fire Async, set the proper boolean diff --git a/src/main/java/org/bukkit/event/server/ServerEvent.java b/src/main/java/org/bukkit/event/server/ServerEvent.java index eb00d6a..70416c8 100644 --- a/src/main/java/org/bukkit/event/server/ServerEvent.java +++ b/src/main/java/org/bukkit/event/server/ServerEvent.java @@ -1,9 +1,19 @@ package org.bukkit.event.server; +import org.bukkit.Bukkit; import org.bukkit.event.Event; /** * Miscellaneous server events */ public abstract class ServerEvent extends Event { + // Paper start + public ServerEvent(boolean isAsync) { + super(isAsync); + } + + public ServerEvent() { + super(!Bukkit.isPrimaryThread()); + } + // Paper end } diff --git a/src/main/java/org/bukkit/event/server/ServerListPingEvent.java b/src/main/java/org/bukkit/event/server/ServerListPingEvent.java index 343f238..3c38d85 100644 --- a/src/main/java/org/bukkit/event/server/ServerListPingEvent.java +++ b/src/main/java/org/bukkit/event/server/ServerListPingEvent.java @@ -21,6 +21,7 @@ public class ServerListPingEvent extends ServerEvent implements Iterable private int maxPlayers; public ServerListPingEvent(final InetAddress address, final String motd, final int numPlayers, final int maxPlayers) { + super(); // Paper - Is this event being fired async? Validate.isTrue(numPlayers >= 0, "Cannot have negative number of players online", numPlayers); this.address = address; this.motd = motd; @@ -38,6 +39,7 @@ public class ServerListPingEvent extends ServerEvent implements Iterable * @param maxPlayers the max number of players */ protected ServerListPingEvent(final InetAddress address, final String motd, final int maxPlayers) { + super(); // Paper - Is this event being fired async? this.numPlayers = MAGIC_PLAYER_COUNT; this.address = address; this.motd = motd; -- 2.7.2