mirror of
https://github.com/dmulloy2/ProtocolLib.git
synced 2024-11-06 19:03:05 +01:00
Handle the possibility that getSuperclass() returns NULL.
Thanks to libraryaddict for discovering this bug.
This commit is contained in:
parent
4dea26b847
commit
c84a5d7fa2
@ -339,8 +339,9 @@ class CommandPacket extends CommandBase {
|
||||
Class<?> clazz = packet.getClass();
|
||||
|
||||
// Get the first Minecraft super class
|
||||
while ((!MinecraftReflection.isMinecraftClass(clazz) ||
|
||||
Factory.class.isAssignableFrom(clazz)) && clazz != Object.class) {
|
||||
while (clazz != null && clazz != Object.class &&
|
||||
(!MinecraftReflection.isMinecraftClass(clazz) ||
|
||||
Factory.class.isAssignableFrom(clazz))) {
|
||||
clazz = clazz.getSuperclass();
|
||||
}
|
||||
|
||||
|
@ -119,7 +119,7 @@ public class ObjectWriter {
|
||||
// Copy private fields underneath
|
||||
Class<?> superclass = commonType.getSuperclass();
|
||||
|
||||
if (!superclass.equals(Object.class)) {
|
||||
if (superclass != null && !superclass.equals(Object.class)) {
|
||||
copyToInternal(source, destination, superclass, false);
|
||||
}
|
||||
|
||||
|
@ -210,7 +210,7 @@ public class PrettyPrinter {
|
||||
ObjectPrinter printer) throws IllegalAccessException {
|
||||
|
||||
// See if we're supposed to skip this class
|
||||
if (current == Object.class || (stop != null && current.equals(stop))) {
|
||||
if (current == null || current == Object.class || (stop != null && current.equals(stop))) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user