[BLUEJ-1040] Adding/removing extends causes a ConcurrentModificationException
When a user adds or removes "extends" arrow a ConcurrentModificationException will be fired:
Exception during compilation: java.lang.RuntimeException: java.util.ConcurrentModificationException java.lang.RuntimeException: java.util.ConcurrentModificationException {quote} at bluej.compiler.EventqueueCompileObserverAdapter.runOnEventQueue(EventqueueCompileObserverAdapter.java:74) at bluej.compiler.EventqueueCompileObserverAdapter.endCompile(EventqueueCompileObserverAdapter.java:99) at bluej.compiler.Job.compile(Job.java:100) at bluej.compiler.CompilerThread.run(CompilerThread.java:72) {quote} Caused by: java.util.ConcurrentModificationException {quote} at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:386) at java.util.AbstractList$Itr.next(AbstractList.java:355) at java.util.Iterator.forEachRemaining(Iterator.java:116) at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) at java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:312) at java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:743) at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580) at bluej.editor.stride.FrameEditorTab.compiled(FrameEditorTab.java:2594) at bluej.editor.stride.FrameEditor.compileFinished(FrameEditor.java:1106) at bluej.pkgmgr.Package$QuietPackageCompileObserver.endCompile(Package.java:2638) at bluej.collect.DataCollectionCompileObserverWrapper.endCompile(DataCollectionCompileObserverWrapper.java:104) at bluej.compiler.EventqueueCompileObserverAdapter.lambda$endCompile$3(EventqueueCompileObserverAdapter.java:99) at bluej.compiler.EventqueueCompileObserverAdapter.lambda$runOnEventQueue$0(EventqueueCompileObserverAdapter.java:58) at com.sun.javafx.application.PlatformImpl.lambda$null$173(PlatformImpl.java:295) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$174(PlatformImpl.java:294) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95){quote}
Issue metadata
- Issue type: Bug
- Priority: Medium
- Fix versions: 4.1.1