mirror of
https://github.com/PaperMC/Paper.git
synced 2025-08-12 10:45:50 -07:00
SPIGOT-5515: Add basic validation against creating non-item itemstacks
By: md_5 <git@md-5.net>
This commit is contained in:
@@ -68,6 +68,7 @@ public class ItemStack implements Cloneable, ConfigurationSerializable {
|
|||||||
@Deprecated
|
@Deprecated
|
||||||
public ItemStack(@NotNull final Material type, final int amount, final short damage, @Nullable final Byte data) {
|
public ItemStack(@NotNull final Material type, final int amount, final short damage, @Nullable final Byte data) {
|
||||||
Validate.notNull(type, "Material cannot be null");
|
Validate.notNull(type, "Material cannot be null");
|
||||||
|
Validate.isTrue(type.isItem(), "Material must be an item: ", type);
|
||||||
this.type = type;
|
this.type = type;
|
||||||
this.amount = amount;
|
this.amount = amount;
|
||||||
if (damage != 0) {
|
if (damage != 0) {
|
||||||
@@ -116,6 +117,7 @@ public class ItemStack implements Cloneable, ConfigurationSerializable {
|
|||||||
@Utility
|
@Utility
|
||||||
public void setType(@NotNull Material type) {
|
public void setType(@NotNull Material type) {
|
||||||
Validate.notNull(type, "Material cannot be null");
|
Validate.notNull(type, "Material cannot be null");
|
||||||
|
Validate.isTrue(type.isItem(), "Material must be an item: ", type);
|
||||||
this.type = type;
|
this.type = type;
|
||||||
if (this.meta != null) {
|
if (this.meta != null) {
|
||||||
this.meta = Bukkit.getItemFactory().asMetaFor(meta, type);
|
this.meta = Bukkit.getItemFactory().asMetaFor(meta, type);
|
||||||
|
Reference in New Issue
Block a user