Fix Potion#toItemStack swapping the extended and upgraded constructor values (#3216)

This commit is contained in:
Wesley Smith 2020-04-24 19:01:45 -04:00 committed by GitHub
parent cb15cfa4f8
commit 75819fac2d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -0,0 +1,24 @@
From d3956af4031ab5e1a451429c49d6923bcf932bf7 Mon Sep 17 00:00:00 2001
From: Wesley Smith <me@wesjd.net>
Date: Fri, 24 Apr 2020 18:30:26 -0400
Subject: [PATCH] Fix Potion#toItemStack swapping the extended and upgraded
constructor values.
While the Potion class is deprecated, it is still used in some plugins for cross-version potion handling. This issue has existed for a long time, and has caused many heaches along the way.
diff --git a/src/main/java/org/bukkit/potion/Potion.java b/src/main/java/org/bukkit/potion/Potion.java
index b9dbbfd0..ac02ae4f 100644
--- a/src/main/java/org/bukkit/potion/Potion.java
+++ b/src/main/java/org/bukkit/potion/Potion.java
@@ -267,7 +267,7 @@ public class Potion {
}
ItemStack itemStack = new ItemStack(material, amount);
PotionMeta meta = (PotionMeta) itemStack.getItemMeta();
- meta.setBasePotionData(new PotionData(type, level == 2, extended));
+ meta.setBasePotionData(new PotionData(type, extended, level == 2)); // Paper - fix swapped values
itemStack.setItemMeta(meta);
return itemStack;
}
--
2.21.0 (Apple Git-122)