NetLogo icon indicating copy to clipboard operation
NetLogo copied to clipboard

Exception when reopening included file saved in separate window

Open brandesNW opened this issue 1 year ago • 1 comments

  1. Open a model with an included file
  2. Go to the Code tab.
  3. Click checkbox to open Code Tab in separate window.
  4. Open a tab for an included file.
  5. Make changes in the file buffer.
  6. Close the separate window (on MacOS click the upper left-hand red button)

An exception occurs

Truncated stack trace: java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 3 at java.base/jdk.internal.util.Preconditions.outOfBounds(Unknown Source) at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Unknown Source) at java.base/jdk.internal.util.Preconditions.checkIndex(Unknown Source) at java.base/java.util.Objects.checkIndex(Unknown Source) at java.base/java.util.ArrayList.get(Unknown Source) at java.desktop/javax.swing.JTabbedPane.setForegroundAt(Unknown Source) at org.nlogo.app.Tabs.clearForeground$1(Tabs.scala:204) at org.nlogo.app.Tabs.$anonfun$handle$4(Tabs.scala:209) at org.nlogo.app.Tabs.$anonfun$handle$4$adapted(Tabs.scala:209) at scala.collection.mutable.HashSet.foreach(HashSet.scala:79) at org.nlogo.app.Tabs.forAllCodeTabs(Tabs.scala:328) at org.nlogo.app.Tabs.clearErrors$1(Tabs.scala:209) at org.nlogo.app.Tabs.handle(Tabs.scala:233) at org.nlogo.window.Events$CompiledEvent.beHandledBy(Events.java:223) at org.nlogo.window.Event.doRaise(Event.java:206) at org.nlogo.window.Event.raise(Event.java:122) at org.nlogo.window.CompilerManager$.$anonfun$$lessinit$greater$default$4$1(CompilerManager.scala:20) at org.nlogo.window.CompilerManager$.$anonfun$$lessinit$greater$default$4$1$adapted(CompilerManager.scala:20) at org.nlogo.window.CompilerManager.raiseEvent(CompilerManager.scala:34) at org.nlogo.window.CompilerManager.compileProcedures(CompilerManager.scala:221) at org.nlogo.window.CompilerManager.compileAll(CompilerManager.scala:173) at org.nlogo.window.CompilerManager.handle(CompilerManager.scala:137) at org.nlogo.window.Events$CompileAllEvent.beHandledBy(Events.java:185) at org.nlogo.window.Event.doRaise(Event.java:206) at org.nlogo.window.Event.raise(Event.java:122) at org.nlogo.app.codetab.CodeTab.compile(CodeTab.scala:163) at org.nlogo.app.codetab.CodeTab.handle(CodeTab.scala:144) at org.nlogo.app.codetab.TemporaryCodeTab.handle(TemporaryCodeTab.scala:130) at org.nlogo.app.common.Events$SwitchedTabsEvent.beHandledBy(Events.java:41) at org.nlogo.window.Event.doRaise(Event.java:206) at org.nlogo.window.Event.raise(Event.java:122) at org.nlogo.app.CodeTabsPanel.stateChanged(CodeTabsPanel.scala:105) at java.desktop/javax.swing.JTabbedPane.fireStateChanged(Unknown Source) at java.desktop/javax.swing.JTabbedPane$ModelListener.stateChanged(Unknown Source) at java.desktop/javax.swing.DefaultSingleSelectionModel.fireStateChanged(Unknown Source) at java.desktop/javax.swing.DefaultSingleSelectionModel.setSelectedIndex(Unknown Source) at java.desktop/javax.swing.JTabbedPane.setSelectedIndexImpl(Unknown Source) at java.desktop/javax.swing.JTabbedPane.removeTabAt(Unknown Source) at java.desktop/javax.swing.JTabbedPane.remove(Unknown Source) at java.desktop/java.awt.Container.addImpl(Unknown Source) at java.desktop/javax.swing.JTabbedPane.insertTab(Unknown Source) at java.desktop/javax.swing.JTabbedPane.addTab(Unknown Source) at java.desktop/javax.swing.JTabbedPane.add(Unknown Source) at org.nlogo.app.AppTabManager.$anonfun$switchToNoSeparateCodeWindow$1(AppTabManager.scala:258) at org.nlogo.app.AppTabManager.$anonfun$switchToNoSeparateCodeWindow$1$adapted(AppTabManager.scala:257) at scala.collection.immutable.Range.foreach(Range.scala:158) at org.nlogo.app.AppTabManager.switchToNoSeparateCodeWindow(AppTabManager.scala:257) at org.nlogo.app.CodeTabsPanel$$anon$2.windowClosing(CodeTabsPanel.scala:86)

brandesNW avatar Jul 07 '23 22:07 brandesNW

This looks like slightly different steps to produce #2104

LaCuneta avatar Sep 20 '23 15:09 LaCuneta