4de67b82cf
Looks like it may have been broken during the 1.8 update (or it was always broken)
47 lines
1.7 KiB
Diff
47 lines
1.7 KiB
Diff
From 5973bc2910615bddecb6be2e5e5701e5188c35cc Mon Sep 17 00:00:00 2001
|
|
From: drXor <mcyoung@mit.edu>
|
|
Date: Fri, 15 Aug 2014 18:11:09 -0400
|
|
Subject: [PATCH] Remove uneeded validation
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
|
index 02f727a..99d3226 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
|
@@ -230,7 +230,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
|
this.lore = new ArrayList<String>(meta.lore);
|
|
}
|
|
|
|
- if (meta.hasEnchants()) {
|
|
+ if (meta.enchantments != null) { // Spigot
|
|
this.enchantments = new HashMap<Enchantment, Integer>(meta.enchantments);
|
|
}
|
|
|
|
@@ -531,7 +531,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
|
}
|
|
|
|
static void applyEnchantments(Map<Enchantment, Integer> enchantments, NBTTagCompound tag, ItemMetaKey key) {
|
|
- if (enchantments == null || enchantments.size() == 0) {
|
|
+ if (enchantments == null /*|| enchantments.size() == 0*/) { // Spigot - remove size check
|
|
return;
|
|
}
|
|
|
|
@@ -622,7 +622,14 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
|
}
|
|
|
|
public boolean removeEnchant(Enchantment ench) {
|
|
- return hasEnchants() && enchantments.remove(ench) != null;
|
|
+ // Spigot start
|
|
+ boolean b = hasEnchants() && enchantments.remove( ench ) != null;
|
|
+ if ( enchantments != null && enchantments.isEmpty() )
|
|
+ {
|
|
+ this.enchantments = null;
|
|
+ }
|
|
+ return b;
|
|
+ // Spigot end
|
|
}
|
|
|
|
public boolean hasEnchants() {
|
|
--
|
|
2.1.0
|
|
|