aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0198-Fix-Potion-toItemStack-swapping-the-extended-and-upg.patch
blob: 800d5364e2f8f5b65fe866156071e9bd003e3f19 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
From 0000000000000000000000000000000000000000 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 b9dbbfd07dea643d7ac749822548571968adaa94..ac02ae4fc179483b4ac3d1adc41684a8426197eb 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;
     }