diff options
| -rw-r--r-- | src/main/java/events/VSAbstractEvent.java | 6 | ||||
| -rw-r--r-- | src/main/java/events/internal/VSProtocolEvent.java | 7 |
2 files changed, 12 insertions, 1 deletions
diff --git a/src/main/java/events/VSAbstractEvent.java b/src/main/java/events/VSAbstractEvent.java index 1bbfc05..7b12a1b 100644 --- a/src/main/java/events/VSAbstractEvent.java +++ b/src/main/java/events/VSAbstractEvent.java @@ -337,7 +337,11 @@ abstract public class VSAbstractEvent extends VSSerializablePrefs { if (VSSerialize.DEBUG) { System.out.println("eventClassname: " + eventClassname); - System.out.println("eventShortname: " + eventShortname); + // Note: eventShortname might be null here for internal events + // that set their shortname in their own deserialize method + if (eventShortname != null) { + System.out.println("eventShortname: " + eventShortname); + } } serialize.setObject(id, "event", this); diff --git a/src/main/java/events/internal/VSProtocolEvent.java b/src/main/java/events/internal/VSProtocolEvent.java index 0cd6db4..54c8974 100644 --- a/src/main/java/events/internal/VSProtocolEvent.java +++ b/src/main/java/events/internal/VSProtocolEvent.java @@ -187,11 +187,18 @@ public class VSProtocolEvent extends VSAbstractInternalEvent } protected String createShortname(String savedShortname) { + // Handle case where this is called during parent deserialization + // before our fields are initialized + if (protocolClassname == null || prefs == null) { + return savedShortname != null ? savedShortname : "Protocol Event"; + } + // Always use current localization strings String protocolShortname = VSRegisteredEvents.getShortnameByClassname(protocolClassname); if (protocolShortname == null) { protocolShortname = protocolClassname; } + String clientServer = isClientProtocol ? prefs.getString("lang.client") : prefs.getString("lang.server"); |
