From eefd6dee33b2c290290e3ccd948967a63c76472a Mon Sep 17 00:00:00 2001 From: Jason Mitchell Date: Sat, 16 Jan 2021 18:58:36 -0800 Subject: Fix crash with speedup Not entirely sure why, but this causes a crash when registering modular armor because it can't find the ic2 good circuit... --- src/main/java/gregtech/api/util/GT_OreDictUnificator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/main/java/gregtech') diff --git a/src/main/java/gregtech/api/util/GT_OreDictUnificator.java b/src/main/java/gregtech/api/util/GT_OreDictUnificator.java index 3991820dd4..eccdfc1bcc 100644 --- a/src/main/java/gregtech/api/util/GT_OreDictUnificator.java +++ b/src/main/java/gregtech/api/util/GT_OreDictUnificator.java @@ -79,7 +79,7 @@ public class GT_OreDictUnificator { if (GT_Utility.isStringInvalid(aName)) return null; ItemStack tStack = sName2StackMap.get(aName.toString()); if (GT_Utility.isStackValid(tStack)) return GT_Utility.copyAmount(aAmount, tStack); - return GT_Utility.copyAmount(aAmount, getOresImmutable(aName).toArray()); + return GT_Utility.copyAmount(aAmount, getOres(aName).toArray()); } public static ItemStack get(Object aName, long aAmount) { @@ -159,7 +159,7 @@ public class GT_OreDictUnificator { public static ItemStack get_nocopy(ItemStack aStack) { return get_nocopy(true, aStack); } - + /** Doesn't copy the returned stack or set quantity. Be careful and do not mutate it; * intended only to optimize comparisons */ static ItemStack get_nocopy(boolean aUseBlackList, ItemStack aStack) { -- cgit From 6a23b6a59a6f2664ae8af68c33f60b3a6d57ab8e Mon Sep 17 00:00:00 2001 From: Jason Mitchell Date: Sat, 16 Jan 2021 19:57:59 -0800 Subject: Better fix. Should be isStringValid(), not isStackValid() --- .../java/gregtech/api/util/GT_OreDictUnificator.java | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) (limited to 'src/main/java/gregtech') diff --git a/src/main/java/gregtech/api/util/GT_OreDictUnificator.java b/src/main/java/gregtech/api/util/GT_OreDictUnificator.java index eccdfc1bcc..a45e002cfa 100644 --- a/src/main/java/gregtech/api/util/GT_OreDictUnificator.java +++ b/src/main/java/gregtech/api/util/GT_OreDictUnificator.java @@ -79,7 +79,7 @@ public class GT_OreDictUnificator { if (GT_Utility.isStringInvalid(aName)) return null; ItemStack tStack = sName2StackMap.get(aName.toString()); if (GT_Utility.isStackValid(tStack)) return GT_Utility.copyAmount(aAmount, tStack); - return GT_Utility.copyAmount(aAmount, getOres(aName).toArray()); + return GT_Utility.copyAmount(aAmount, getOresImmutable(aName).toArray()); } public static ItemStack get(Object aName, long aAmount) { @@ -472,17 +472,9 @@ public class GT_OreDictUnificator { * Fast version of {@link #getOres(Object)}, * which doesn't call {@link System#arraycopy(Object, int, Object, int, int)} in {@link ArrayList#addAll} */ - public static List getOresImmutable(@Nullable Object oreName) { - return getOresImmutable(oreName != null ? oreName.toString() : null); - } - - /** - * Fast version of {@link #getOres(Object)}, - * which doesn't call {@link System#arraycopy(Object, int, Object, int, int)} in {@link ArrayList#addAll} - */ - public static List getOresImmutable(@Nullable String oreName) { - if(oreName == null) oreName = E; - - return GT_Utility.isStackValid(oreName) ? Collections.unmodifiableList(OreDictionary.getOres(oreName)) : Collections.emptyList(); + public static List getOresImmutable(@Nullable Object aOreName) { + String aName = aOreName == null ? E : aOreName.toString(); + + return GT_Utility.isStringValid(aName) ? Collections.unmodifiableList(OreDictionary.getOres(aName)) : Collections.emptyList(); } } -- cgit