Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8095590

InfoPanelController.sceneGraphDidChange() creates and pushes a Job

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P3
    • 8
    • 8
    • javafx
    • None

    Description

      Debugging DTL-6587, I notice the following call stack:

      InfoPanelControler.sceneGraphDidChange()
          -> InfoPanelController.updateController()
              -> InfoPanelController.updateController(…)
                  -> JobManager.push()

      This should be reworked : it is not permitted to create and push a Job
      inside AbstractPanelController.sceneGraphDidChange() (because
      this method is usually invoked as a side effect of another job execution).





      java.lang.AssertionError
      at com.oracle.javafx.scenebuilder.kit.editor.job.ModifyFxControllerJob.<init>(ModifyFxControllerJob.java:52)
      at com.oracle.javafx.scenebuilder.app.info.InfoPanelController.updateController(InfoPanelController.java:260)
      at com.oracle.javafx.scenebuilder.app.info.InfoPanelController.updateController(InfoPanelController.java:242)
      at com.oracle.javafx.scenebuilder.app.info.InfoPanelController.sceneGraphRevisionDidChange(InfoPanelController.java:119)
      at com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractPanelController$3.changed(AbstractPanelController.java:213)
      at com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractPanelController$3.changed(AbstractPanelController.java:209)
      at com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:347)
      at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:80)
      at javafx.beans.property.IntegerPropertyBase.fireValueChangedEvent(IntegerPropertyBase.java:106)
      at javafx.beans.property.IntegerPropertyBase.markInvalid(IntegerPropertyBase.java:113)
      at javafx.beans.property.IntegerPropertyBase.set(IntegerPropertyBase.java:146)
      at com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument.refreshSceneGraph(FXOMDocument.java:282)
      at com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument.endUpdate(FXOMDocument.java:262)
      at com.oracle.javafx.scenebuilder.kit.editor.job.v2.CompositeJob.execute(CompositeJob.java:101)
      at com.oracle.javafx.scenebuilder.kit.editor.JobManager.executeJob(JobManager.java:181)
      at com.oracle.javafx.scenebuilder.kit.editor.JobManager.push(JobManager.java:70)
      at com.oracle.javafx.scenebuilder.kit.editor.EditorController.performEditAction(EditorController.java:996)
      at com.oracle.javafx.scenebuilder.app.DocumentWindowController.performPaste(DocumentWindowController.java:1443)
      at com.oracle.javafx.scenebuilder.app.DocumentWindowController.performEditAction(DocumentWindowController.java:842)
      at com.oracle.javafx.scenebuilder.app.menubar.MenuBarController$DocumentEditActionController.perform(MenuBarController.java:1610)
      at com.oracle.javafx.scenebuilder.app.menubar.MenuBarController.handleOnActionMenu(MenuBarController.java:1115)
      at com.oracle.javafx.scenebuilder.app.menubar.MenuBarController.access$800(MenuBarController.java:90)
      at com.oracle.javafx.scenebuilder.app.menubar.MenuBarController$20.handle(MenuBarController.java:1108)
      at com.oracle.javafx.scenebuilder.app.menubar.MenuBarController$20.handle(MenuBarController.java:1104)
      at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
      at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238)
      at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
      at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
      at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
      at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
      at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:49)
      at javafx.event.Event.fireEvent(Event.java:204)
      at javafx.scene.control.MenuItem.fire(MenuItem.java:462)
      at com.sun.javafx.scene.control.GlobalMenuAdapter$5.handle(GlobalMenuAdapter.java:158)
      at com.sun.javafx.scene.control.GlobalMenuAdapter$5.handle(GlobalMenuAdapter.java:156)
      at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
      at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238)
      at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
      at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
      at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
      at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
      at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54)
      at javafx.event.Event.fireEvent(Event.java:204)
      at javafx.scene.control.MenuItem.fire(MenuItem.java:462)
      at com.sun.javafx.tk.quantum.GlassSystemMenu$6.action(GlassSystemMenu.java:234)

      Attachments

        Activity

          People

            yjoan Yves Joan (Inactive)
            eleponn Eric Le Ponner
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:
              Imported: