diff --git a/Essentials/src/main/java/com/earth2me/essentials/UserData.java b/Essentials/src/main/java/com/earth2me/essentials/UserData.java index 5e1892387c8..c7f1f90ca73 100644 --- a/Essentials/src/main/java/com/earth2me/essentials/UserData.java +++ b/Essentials/src/main/java/com/earth2me/essentials/UserData.java @@ -17,7 +17,6 @@ import org.bukkit.Material; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; -import org.spongepowered.configurate.serialize.SerializationException; import java.io.File; import java.math.BigDecimal; @@ -83,7 +82,7 @@ public final void reloadConfig() { config.load(); try { holder = config.getRootNode().get(UserConfigHolder.class); - } catch (SerializationException e) { + } catch (Throwable e) { ess.getLogger().log(Level.SEVERE, "Error while reading user config: " + config.getFile().getName(), e); throw new RuntimeException(e); } diff --git a/Essentials/src/main/java/com/earth2me/essentials/config/serializers/MaterialTypeSerializer.java b/Essentials/src/main/java/com/earth2me/essentials/config/serializers/MaterialTypeSerializer.java index 50e23157293..3fb5c1a5c12 100644 --- a/Essentials/src/main/java/com/earth2me/essentials/config/serializers/MaterialTypeSerializer.java +++ b/Essentials/src/main/java/com/earth2me/essentials/config/serializers/MaterialTypeSerializer.java @@ -17,7 +17,9 @@ public Material deserialize(Type type, Object obj) throws SerializationException if (obj instanceof String) { return Material.matchMaterial((String) obj); } - return null; + + // Configurate will use an EnumSet to deserialize, which doesn't support null types. Default to air. + return Material.AIR; } @Override