#7 Illegal rocket state when adding a component

Bug
open
nobody
5
2009-10-11
2009-10-11
Sampo Niskanen
No

Stack trace from an automatic bug report. More information is needed in order to fix this.

It seems that the user is adding a component to the tree structure, and during the firing an illegal state is encountered.

java.lang.RuntimeException: BUG: Unable to invoke getMethod of DoubleModel[net.sf.openrocket.rocketcomponent.EngineBlock:Thickness]
at net.sf.openrocket.gui.adaptors.DoubleModel.getValue(Unknown Source)
at net.sf.openrocket.gui.adaptors.DoubleModel.stateChanged(Unknown Source)
at net.sf.openrocket.rocketcomponent.Rocket.fireComponentChangeEvent(Unknown Source)
at net.sf.openrocket.rocketcomponent.RocketComponent.fireComponentChangeEvent(Unknown Source)
at net.sf.openrocket.rocketcomponent.RocketComponent.fireComponentChangeEvent(Unknown Source)
at net.sf.openrocket.rocketcomponent.RocketComponent.fireAddRemoveEvent(Unknown Source)
at net.sf.openrocket.rocketcomponent.RocketComponent.addChild(Unknown Source)
at net.sf.openrocket.rocketcomponent.RocketComponent.addChild(Unknown Source)
at net.sf.openrocket.gui.main.ComponentAddButtons$ComponentButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
... 33 more
Caused by: java.lang.IllegalStateException: Inconsistent internal state: this=Booster stage parent=Rocket parent.children=[Sustainer, Booster stage, Booster stage]
at net.sf.openrocket.rocketcomponent.RocketComponent.getPreviousComponent(Unknown Source)
at net.sf.openrocket.rocketcomponent.SymmetricComponent.getPreviousSymmetricComponent(Unknown Source)
at net.sf.openrocket.rocketcomponent.BodyTube.getRadius(Unknown Source)
at net.sf.openrocket.rocketcomponent.BodyTube.getInnerRadius(Unknown Source)
at net.sf.openrocket.rocketcomponent.ThicknessRingComponent.getOuterRadius(Unknown Source)
at net.sf.openrocket.rocketcomponent.ThicknessRingComponent.getThickness(Unknown Source)
... 37 more

Discussion