Project: Eclipse_Platform_UI
Bug 272528 [WorkingSets] AIOOBE when trying to remove breakpoint by doubleclick on nearby line
Reported: 2009-04-16 12:50:48 | Status: verified fixed

I20090415-1348 - have: public class Try { String s= "Hello" + "World"; static { String foo= "bar"; System.out.println(foo); } } - doubleclick in vertical ruler on line ' + "World";' - doubleclick again - ... and on the third doubleclick, I get the AIOOBE below. My Breakpoints view is visible and grouped by Breakpoint Working Sets. When I do the same on the empty line before 'String foo= "bar";', I get a similar exception. !ENTRY org.eclipse.debug.core 4 2 2009-04-16 18:43:15.127 !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.debug.core". !STACK 0 java.lang.ArrayIndexOutOfBoundsException: -1 at com.ibm.icu.text.RuleBasedCollator.append(RuleBasedCollator.java:3492) at com.ibm.icu.text.RuleBasedCollator.doPrimaryCompare(RuleBasedCollator.java:3280) at com.ibm.icu.text.RuleBasedCollator.compareRegular(RuleBasedCollator.java:2299) at com.ibm.icu.text.RuleBasedCollator.compare(RuleBasedCollator.java:1292) at org.eclipse.ui.internal.WorkingSetComparator.compare(WorkingSetComparator.java:48) at java.util.TreeMap.put(TreeMap.java:530) at java.util.TreeSet.add(TreeSet.java:238) at org.eclipse.ui.internal.AbstractWorkingSetManager.getWorkingSets(AbstractWorkingSetManager.java:265) at org.eclipse.debug.internal.ui.views.breakpoints.BreakpointSetOrganizer.breakpointsRemoved(BreakpointSetOrganizer.java:242) at org.eclipse.debug.internal.core.BreakpointManager$BreakpointsNotifier.run(BreakpointManager.java:992) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.debug.internal.core.BreakpointManager$BreakpointsNotifier.notify(BreakpointManager.java:1014) at org.eclipse.debug.internal.core.BreakpointManager.fireUpdate(BreakpointManager.java:868) at org.eclipse.debug.internal.core.BreakpointManager.removeBreakpoints(BreakpointManager.java:476) at org.eclipse.debug.internal.core.BreakpointManager.removeBreakpoint(BreakpointManager.java:455) at org.eclipse.jdt.internal.debug.ui.actions.BreakpointLocationVerifierJob.manageLineBreakpoint(BreakpointLocationVerifierJob.java:234) at org.eclipse.jdt.internal.debug.ui.actions.BreakpointLocationVerifierJob.run(BreakpointLocationVerifierJob.java:176) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

Files changed in fix:
bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/AbstractWorkingSetManager.java bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkingSetComparator.java