View Issue Details

IDProjectCategoryView StatusLast Update
0001413Industrial-Craft²machinespublic2014-10-08 10:48
Reporterfreakyd Assigned ToThunderdark  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Platformx86_64OSLinuxOS VersionFC20
Product VersionBuilds for MC 1.7.10 
Summary0001413: NPE from .canDrain check on tanks inside machines
DescriptionIFluidHandler canDrain check on tanks that are internal to the ic2 machines, for example the condenser and fluid reactor, will cause an NPE that crashes the game for good.
Steps To ReproducePerform canDrain check on ic2 machine with tank.
Additional InformationIt's permanently fatal to your save. Make a backup.
TagsNo tags attached.
Minecraft Version

Activities

freakyd

2014-09-27 22:14

reporter  

2014-09-25-1.log.gz (1,955 bytes)

sen-mithrarin

2014-09-30 04:04

reporter   ~0003476

Could be a bug with LogisticsPipes, retry w/o and use an other mod like EnderIO or BC wich also support fluid-transport.

freakyd

2014-09-30 18:42

reporter   ~0003486

I will do a complete investigation, but I know it performs a canDrain on the thermal expansion tanks... but NOT the buildcraft ones. For that it uses ISpecialTankHandler because BC always does a "FALSE" return on canDrain. Oh yah the developers over on LP told me it was IC2 bug when I reported it. I'll report what I find after digging in the buildcraft source.

sen-mithrarin

2014-09-30 21:36

reporter   ~0003487

Well, maybe its just me, but its not clear what you mean.
As far as I can guess you try to drain out a tank inside a ic2-machine with an other mod (in this case LP) wich fails by named NPE. The StackTrace says that LP try to call named method but gets null. So anything inside this method seems to be null. Sadly ic2-team doesnt publish the siurce so we could investigate.

freakyd

2014-10-02 18:02

reporter   ~0003488

yah that's right LP does a candrain check and it always comes back null.

sen-mithrarin

2014-10-03 10:43

reporter   ~0003493

Still unclear : do you get NULL as a return or does the method you call crash with a NPE ?

Anyway : as we all know Direwolf these mods can work all together, i thing just the currenty public builds just not compatible.

freakyd

2014-10-03 17:48

reporter   ~0003495

method .canDrain crashes with NPE and it does that on any machine with a tank. Including nuclear reactor in fluid mode. The mods work great together, as long as you never put a fluid provider on an ic2 machine. It's the only pipe that performs the canDrain. I grepped through the LP source code.

Thunderdark

2014-10-08 10:48

viewer   ~0003503

fixed in next Build add check to all IC2 Maschine to return "false" if internal .canDrain value is set to null

Issue History

Date Modified Username Field Change
2014-09-27 18:14 freakyd New Issue
2014-09-27 22:14 freakyd File Added: 2014-09-25-1.log.gz
2014-09-30 04:04 sen-mithrarin Note Added: 0003476
2014-09-30 18:42 freakyd Note Added: 0003486
2014-09-30 21:36 sen-mithrarin Note Added: 0003487
2014-10-02 18:02 freakyd Note Added: 0003488
2014-10-03 10:43 sen-mithrarin Note Added: 0003493
2014-10-03 17:48 freakyd Note Added: 0003495
2014-10-08 10:48 Thunderdark Note Added: 0003503
2014-10-08 10:48 Thunderdark Status new => resolved
2014-10-08 10:48 Thunderdark Resolution open => fixed
2014-10-08 10:48 Thunderdark Assigned To => Thunderdark