diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/org/bukkit/event/EventHandler.java | 2 | ||||
-rw-r--r-- | src/main/java/org/bukkit/event/HandlerList.java | 4 | ||||
-rw-r--r-- | src/main/java/org/bukkit/plugin/SimplePluginManager.java | 2 |
3 files changed, 5 insertions, 3 deletions
diff --git a/src/main/java/org/bukkit/event/EventHandler.java b/src/main/java/org/bukkit/event/EventHandler.java index afd09048..42c00368 100644 --- a/src/main/java/org/bukkit/event/EventHandler.java +++ b/src/main/java/org/bukkit/event/EventHandler.java @@ -11,5 +11,5 @@ public @interface EventHandler { Class<? extends Event> event(); - EventPriority priority(); + EventPriority priority() default EventPriority.NORMAL; } diff --git a/src/main/java/org/bukkit/event/HandlerList.java b/src/main/java/org/bukkit/event/HandlerList.java index 643939f2..601c3b63 100644 --- a/src/main/java/org/bukkit/event/HandlerList.java +++ b/src/main/java/org/bukkit/event/HandlerList.java @@ -50,7 +50,9 @@ public class HandlerList { public static void unregisterAll() { for (HandlerList h : alllists) { - h.handlerslots.clear(); + for (List<RegisteredListener> list : h.handlerslots.values()) { + list.clear(); + } h.baked = false; } } diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java index 8411e5b0..63cf619d 100644 --- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java +++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java @@ -471,7 +471,7 @@ public final class SimplePluginManager implements PluginManager { } catch (NoSuchMethodException e) { if (clazz.getSuperclass() != null && !clazz.getSuperclass().equals(Event.class) - && clazz.getSuperclass().isAssignableFrom(Event.class)) { + && Event.class.isAssignableFrom(clazz.getSuperclass())) { return getRegistrationClass(clazz.getSuperclass().asSubclass(Event.class)); } else { throw new IllegalPluginAccessException("Unable to find handler list for event " + clazz.getName()); |