Bug 159009 Errors opening resource
build i0926-0935 I commonly use ctrl-shift-r to open a resource in my workspace. with this build I frequently get an error and the following stack track in my log file. !ENTRY org.eclipse.core.jobs 4 2 2006-09-27 13:47:30.164 !MESSAGE An internal error occurred during: "Searching for all". !STACK 0 java.util.ConcurrentModificationException at java.util.LinkedHashMap$LinkedHashIterator.nextEntry(LinkedHashMap.java:365) at java.util.LinkedHashMap$ValueIterator.next(LinkedHashMap.java:380) at org.eclipse.ui.dialogs.ResourceSearcher$ResourceHistory.getMatchedElements(ResourceSearcher.java:497) at org.eclipse.ui.dialogs.ResourceSearcher$ResourceSearchEngineJob.getFilteredHistory(ResourceSearcher.java:306) at org.eclipse.ui.dialogs.AbstractSearcher$AbstractSearchJob.internalRun(AbstractSearcher.java:395) at org.eclipse.ui.dialogs.AbstractSearcher$AbstractSearchJob.doRun(AbstractSearcher.java:371) at org.eclipse.ui.dialogs.AbstractSearcher$AbstractJob.run(AbstractSearcher.java:337) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
bundles/org.eclipse.ui.ide/extensions/org/eclipse/ui/dialogs/ResourceSearcher.java
import org.eclipse.core.runtime.Status;
import org.eclipse.ui.IMemento;
import org.eclipse.ui.internal.WorkbenchPlugin;
import org.eclipse.ui.internal.ide.model.ResourceFactory;
import org.eclipse.ui.utils.ResourceSearchItem;
import com.ibm.icu.text.Collator;
/**
 * ResourceSearcher is an implementation of AbstractSearcher to searching
 * resources in workspace.
 * 
 * <strong>EXPERIMENTAL</strong> This class or interface has been added as part
 * of a work in progress. This API may change at any given time. Please do not
 * use this API without consulting with the Platform/UI team.
 * 
 * @since 3.3
 * @see AbstractSearcher
 */
public class ResourceSearcher extends AbstractSearcher {
	/**
	 * Filter param to change manner of searching. When its filter param is
	 * true, ResourceSearcher show all derived resources. It's set by
	 * <code> setFilterParam(int param, Object value) <code> method.
	 */
	public static final int DERIVED = 2;
	private List lastCompletedResult;
	private static Collator collator = Collator.getInstance();
	
	private ResourceFilter filter;
	
	private ResourceFilter lastComplitedFilter = null;