java.lang.Error: Unexpected non-local exit
at haven.render.RenderTree$TreeSlot.remove(RenderTree.java:544)
at haven.render.RenderTree$TreeSlot.remove(RenderTree.java:535)
at haven.render.RenderTree$TreeSlot.remove(RenderTree.java:535)
at haven.render.RenderTree$TreeSlot.remove(RenderTree.java:535)
at haven.render.RenderTree$TreeSlot.remove(RenderTree.java:535)
at haven.render.RenderTree$TreeSlot.remove(RenderTree.java:535)
at haven.MapView$Gobs.removed(MapView.java:620)
at haven.OCache.remove(OCache.java:108)
at haven.OCache$GobInfo.apply(OCache.java:370)
at haven.Loader.lambda$defer$0(Loader.java:240)
at haven.Loader$Future.run(Loader.java:71)
at haven.Loader$Future.access$400(Loader.java:42)
at haven.Loader.loop(Loader.java:202)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalStateException: removing non-present slot
at haven.render.InstanceList.remove(InstanceList.java:713)
at haven.render.RenderTree$Client.removed(RenderTree.java:110)
at haven.render.RenderTree$TreeSlot.lambda$remove$1(RenderTree.java:541)
at java.base/java.util.ArrayList.forEach(Unknown Source)
at haven.render.RenderTree$TreeSlot.remove(RenderTree.java:541)
... 13 more
This happens every time I try to destroy a fence piece. What appears to be happening is that the fence is destroyed and the game runs the destroy action an extra time afterward, causing it to crash when it tries to remove something that isn't there in the first place.
EDIT: Stopping prematurely, as soon as the fence disappears, treats the fence as if it is still there. In order to interact with the space, I must destroy it -- the spot where the fence was -- and thereby crash my game.
EDIT EDIT: A friend tried removing the fence. I crashed. He removed the rest of the fence for me and left across the base only to eventually also crash. How odd.