diff --git a/src/main/java/codechicken/nei/BookmarkPanel.java b/src/main/java/codechicken/nei/BookmarkPanel.java index 9e5d7afc..fc11ae64 100644 --- a/src/main/java/codechicken/nei/BookmarkPanel.java +++ b/src/main/java/codechicken/nei/BookmarkPanel.java @@ -281,15 +281,11 @@ public class BookmarkPanel extends ItemPanel for (PositionedStack stack : ingredients) { final NBTTagCompound nbTag = StackInfo.itemStackToNBT(stack.item, saveStackSize); - if (nbTag.getInteger("Count") > 0) { - - if (unique.get(nbTag) == null) { - unique.put(nbTag, 1); - sorted.add(nbTag); - } else if (saveStackSize) { - unique.put(nbTag, unique.get(nbTag) + 1); - } - + if (unique.get(nbTag) == null) { + unique.put(nbTag, 1); + sorted.add(nbTag); + } else if (saveStackSize) { + unique.put(nbTag, unique.get(nbTag) + 1); } } diff --git a/src/main/java/codechicken/nei/recipe/stackinfo/DefaultStackStringifyHandler.java b/src/main/java/codechicken/nei/recipe/stackinfo/DefaultStackStringifyHandler.java index 7ce23064..de1324ca 100644 --- a/src/main/java/codechicken/nei/recipe/stackinfo/DefaultStackStringifyHandler.java +++ b/src/main/java/codechicken/nei/recipe/stackinfo/DefaultStackStringifyHandler.java @@ -14,9 +14,15 @@ public class DefaultStackStringifyHandler implements IStackStringifyHandler public NBTTagCompound convertItemStackToNBT(ItemStack stack, boolean saveStackSize) { + final String strId = Item.itemRegistry.getNameForObject(stack.getItem()); + + if (strId == null) { + return null; + } + final NBTTagCompound nbTag = new NBTTagCompound(); - nbTag.setString("strId", Item.itemRegistry.getNameForObject(stack.getItem())); - nbTag.setInteger("Count", saveStackSize? stack.stackSize: 1); + nbTag.setString("strId", strId); + nbTag.setInteger("Count", Math.max(saveStackSize? stack.stackSize: 1, 1)); nbTag.setShort("Damage", (short)stack.getItemDamage()); if (stack.hasTagCompound()) { diff --git a/src/main/java/codechicken/nei/recipe/stackinfo/GTFluidStackStringifyHandler.java b/src/main/java/codechicken/nei/recipe/stackinfo/GTFluidStackStringifyHandler.java index e3cceb47..4aec9e13 100644 --- a/src/main/java/codechicken/nei/recipe/stackinfo/GTFluidStackStringifyHandler.java +++ b/src/main/java/codechicken/nei/recipe/stackinfo/GTFluidStackStringifyHandler.java @@ -31,12 +31,15 @@ public class GTFluidStackStringifyHandler implements IStackStringifyHandler { if (GTDisplayFluid != null && GTDisplayFluid.isInstance(stack.getItem())) { - final NBTTagCompound nbTag = new NBTTagCompound(); final FluidStack fluidStack = getFluid(stack); - nbTag.setString("gtFluidName", fluidStack.getFluid().getName()); - nbTag.setInteger("Count", saveStackSize? fluidStack.amount: 1); - return nbTag; + if (fluidStack != null) { + final NBTTagCompound nbTag = new NBTTagCompound(); + nbTag.setString("gtFluidName", fluidStack.getFluid().getName()); + nbTag.setInteger("Count", saveStackSize? fluidStack.amount: 1); + return nbTag; + } + } return null;