Skip to content

Server crash (NullPointerException) when putting OpenBlocks XP drain on embers fluid tank #42

@WebFreak001

Description

@WebFreak001

General Information

Describe the bug:
The server crashes with a NullPointerException when an embers tank is being filled with liquid XP using an OpenBlocks XP drain which is placed on an embers tank and a player stands on it.

To Reproduce:

(this doesn't seem to reproduce consistently but these were the steps that were taken according to player):

  1. Place embers tank
  2. Put OpenBlocks XP drain on it
  3. Let player with some XP or levels stand on XP drain

it's possible there was some other kind of XP liquid in there first

Expected behavior:
Liquid XP should flow into the tank or it should be rejected altogether instead of crashing.


Environment Versions

Mystic Mods Versions
(see crash report)

Other Versions:

  • Forge: 14.23.5.2847
  • Minecraft: 1.12.2
  • Modpack: Seablock: Rustic Waters 1.2.1

Logging Information

java.lang.NullPointerException: Null string not allowed
    at java.util.Objects.requireNonNull(Objects.java:228)
    at net.minecraft.nbt.NBTTagString.<init>(NBTTagString.java:19)
    at net.minecraft.nbt.NBTTagCompound.setString(NBTTagCompound.java:138)
    at net.minecraftforge.fluids.FluidStack.writeToNBT(FluidStack.java:107)
    at net.minecraftforge.fluids.FluidTank.writeToNBT(FluidTank.java:77)
    at net.minecraftforge.fluids.capability.TileFluidHandler.writeToNBT(TileFluidHandler.java:47)
    at teamroots.embers.tileentity.TileEntityOpenTank.writeToNBT(TileEntityOpenTank.java:19)
    at teamroots.embers.tileentity.TileEntityTank.getUpdateTag(TileEntityTank.java:77)
    at teamroots.embers.tileentity.TileEntityTank.getUpdatePacket(TileEntityTank.java:83)
    at teamroots.embers.util.Misc.syncTE(Misc.java:266)
    at teamroots.embers.tileentity.TileEntityTank.markDirty(TileEntityTank.java:144)
    at teamroots.embers.tileentity.TileEntityTank$1.onContentsChanged(TileEntityTank.java:39)
    at net.minecraftforge.fluids.FluidTank.fillInternal(FluidTank.java:182)
    at net.minecraftforge.fluids.FluidTank.fill(FluidTank.java:149)
    at teamroots.embers.tileentity.TileEntityTank$1.fill(TileEntityTank.java:48)
    at openblocks.common.tileentity.TileEntityXPDrain.tryDrainPlayer(TileEntityXPDrain.java:67)
    at openblocks.common.tileentity.TileEntityXPDrain.update(TileEntityXPDrain.java:43)
    at net.minecraft.world.World.redirect$tileEntityUpdate$zzj000(World.java:4137)
    at net.minecraft.world.World.updateEntities(World.java:1838)
    at net.minecraft.world.WorldServer.updateEntities(WorldServer.java:613)
    at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:767)
    at net.minecraft.server.dedicated.DedicatedServer.updateTimeLightAndEntities(DedicatedServer.java:397)
    at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:668)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526)
    at java.lang.Thread.run(Thread.java:748)

Crash Report:
crashlog.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions