Bug 114550 IndexOutOfBoundsException in Problems Hierarchal Mode
20051101 I am not sure how I got this but I was switching to the ColorSelector.java in hierarchal mode (which has no hierarchy) Caused by: java.lang.ArrayIndexOutOfBoundsException: 0 at org.eclipse.ui.views.markers.internal.MarkerAdapter.buildHierarchy(MarkerAdapter.java:308) at org.eclipse.ui.views.markers.internal.MarkerAdapter$MarkerCategory.getChildren(MarkerAdapter.java:89) at org.eclipse.ui.views.markers.internal.MarkerTreeContentProvider.getChildren(MarkerTreeContentProvider.java:71) at org.eclipse.jface.viewers.AbstractTreeViewer.getRawChildren(AbstractTreeViewer.java:899) at org.eclipse.jface.viewers.StructuredViewer.getFilteredChildren(StructuredViewer.java:790) at org.eclipse.jface.viewers.StructuredViewer.getSortedChildren(StructuredViewer.java:905) at org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:512) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:494) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpandToLevel(AbstractTreeViewer.java:1122) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpandToLevel(AbstractTreeViewer.java:1131) at org.eclipse.jface.viewers.AbstractTreeViewer.expandToLevel(AbstractTreeViewer.java:658) at org.eclipse.jface.viewers.AbstractTreeViewer.expandToLevel(AbstractTreeViewer.java:641) at org.eclipse.jface.viewers.AbstractTreeViewer.expandAll(AbstractTreeViewer.java:630) at org.eclipse.ui.views.markers.internal.MarkerView$7.runInUIThread(MarkerView.java:1280) at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:93) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:123) ... 18 more
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/MarkerAdapter.java
private class MarkerCategory extends MarkerNode {
		MarkerAdapter markerAdapter;
		int start;
		int end;
		int fieldIndex = 0;
		MarkerCategory parent;
		private MarkerNode[] children;
		private String name;
		/**
		 * Create a new instance of the receiver that has the markers between
		 * startIndex and endIndex showing.
		 * 
		 * @param adapter
		 * @param startIndex
		 * @param endIndex
		 * @param fieldNumber
		 * @param parentCategory
		 */
		MarkerCategory(MarkerAdapter adapter, int startIndex, int endIndex,
				int fieldNumber, MarkerCategory parentCategory) {
			markerAdapter = adapter;
			start = startIndex;
			end = endIndex;
			fieldIndex = fieldNumber;
			parent = parentCategory;
			TableSorter sorter = view.getTableSorter();
			int prioritySlot = sorter.getPriorities()[fieldIndex];
			IField field = sorter.getFields()[prioritySlot];
			name = field