NOTICE! This is a static HTML version of a legacy ImageJ Trac ticket.

The ImageJ project now uses GitHub Issues for issue tracking.

Please file all new issues there.

Ticket #703 (closed defect: moved)

Opened 2011-07-29T16:28:23-05:00

Last modified 2013-03-21T11:33:40-05:00

Race condition when repainting image canvas

Reported by: curtis Owned by: curtis
Priority: trivial Milestone: imagej-2.0.0
Component: Display API Version:
Severity: serious Keywords:
Cc: Blocked By:
Blocking: #1500

Description

Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException
	at java.util.LinkedList$ListItr.checkForComodification(LinkedList.java:761)
	at java.util.LinkedList$ListItr.next(LinkedList.java:696)
	at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1010)
	at org.jhotdraw.draw.DefaultDrawingView.drawHandles(DefaultDrawingView.java:684)
	at org.jhotdraw.draw.DefaultDrawingView.paintComponent(DefaultDrawingView.java:372)
	at javax.swing.JComponent.paint(JComponent.java:1029)
	at org.jhotdraw.draw.DefaultDrawingView.paint(DefaultDrawingView.java:739)
	at javax.swing.JComponent._paintImmediately(JComponent.java:5098)
	at javax.swing.JComponent.paintImmediately(JComponent.java:4882)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:811)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:713)
	at javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:693)
	at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:125)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:677)
	at java.awt.EventQueue.access$000(EventQueue.java:85)
	at java.awt.EventQueue$1.run(EventQueue.java:638)
	at java.awt.EventQueue$1.run(EventQueue.java:636)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:647)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Threading issues can be difficult to replicate, but I can generally reproduce this exception on my system by opening Blobs, drawing a large rectangle overlay from the center of the image to far outside the bounds on the bottom right, then mashing Ctrl+Shift+X to repeatedly crop as fast as possible.

Change History

comment:1 Changed 2012-01-26T12:44:50-06:00 by curtis

  • Owner changed from gharris to curtis

comment:2 Changed 2013-03-21T11:33:40-05:00 by bdezonia

  • Blocking 1500 added

comment:3 Changed 2014-12-18T12:47:57-06:00 by curtis

  • Status changed from new to closed
  • Resolution set to moved