diff options
author | Alexdoru <57050655+Alexdoru@users.noreply.github.com> | 2024-10-22 19:53:51 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-22 19:53:51 +0200 |
commit | b587aa19b34d7cfab3f8886a359b84fc2229b74f (patch) | |
tree | b5a3e6cd0cf59a850be0eb8dea3f17de3734900f /src/main/java/gregtech/api | |
parent | abdd147222b44685abfa79a87e2f104dc699af67 (diff) | |
download | GT5-Unofficial-b587aa19b34d7cfab3f8886a359b84fc2229b74f.tar.gz GT5-Unofficial-b587aa19b34d7cfab3f8886a359b84fc2229b74f.tar.bz2 GT5-Unofficial-b587aa19b34d7cfab3f8886a359b84fc2229b74f.zip |
Fix NPE on IC2 recycler blacklist (#3403)
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r-- | src/main/java/gregtech/api/util/GTModHandler.java | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/main/java/gregtech/api/util/GTModHandler.java b/src/main/java/gregtech/api/util/GTModHandler.java index 009cde6476..fa56ab9b34 100644 --- a/src/main/java/gregtech/api/util/GTModHandler.java +++ b/src/main/java/gregtech/api/util/GTModHandler.java @@ -482,12 +482,26 @@ public class GTModHandler { return true; } + // temporary buffer list to fix NPE if you try to access the recyclerBlacklist too early + private static List<RecipeInputItemStack> tempRecyclerBlackList = new ArrayList<>(); + /** * Adds an Item to the Recycler Blacklist */ public static boolean addToRecyclerBlackList(ItemStack aRecycledStack) { if (aRecycledStack == null) return false; - Recipes.recyclerBlacklist.add(new RecipeInputItemStack(aRecycledStack)); + final RecipeInputItemStack iRecipeInput = new RecipeInputItemStack(aRecycledStack); + if (Recipes.recyclerBlacklist == null) { + tempRecyclerBlackList.add(iRecipeInput); + return true; + } + if (tempRecyclerBlackList != null) { + for (RecipeInputItemStack recipe : tempRecyclerBlackList) { + Recipes.recyclerBlacklist.add(recipe); + } + tempRecyclerBlackList = null; + } + Recipes.recyclerBlacklist.add(iRecipeInput); return true; } |