Bug 6151 - ArrayIndexOutOfBoundsException in ObjectSet
Summary: ArrayIndexOutOfBoundsException in ObjectSet
Status: RESOLVED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 2.0   Edit
Hardware: PC Windows 2000
: P3 normal (vote)
Target Milestone: 2.0 M1   Edit
Assignee: Philipe Mulet CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 6160 6176 (view as bug list)
Depends on:
Blocks:
 
Reported: 2001-11-21 05:22 EST by Martin Aeschlimann CLA
Modified: 2002-01-11 09:22 EST (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Aeschlimann CLA 2001-11-21 05:22:27 EST
11120

Log: Wed Nov 21 11:18:56 GMT+01:00 2001
4 com.oti.eclipsetools 4 Error
java.lang.reflect.InvocationTargetException: 
java.lang.ArrayIndexOutOfBoundsException: 31
	at org.eclipse.jdt.internal.compiler.util.ObjectSet$1.nextElement
(ObjectSet.java:109)
	at 
org.eclipse.jdt.internal.core.SetClasspathOperation.updateProjectReferences
(SetClasspathOperation.java:330)
	at org.eclipse.jdt.internal.core.SetClasspathOperation.executeOperation
(SetClasspathOperation.java:119)
	at org.eclipse.jdt.internal.core.JavaModelOperation.execute
(JavaModelOperation.java:257)
	at org.eclipse.jdt.internal.core.JavaModelOperation.run
(JavaModelOperation.java:454)
	at org.eclipse.core.internal.resources.Workspace.run
(Workspace.java:1186)
	at org.eclipse.jdt.internal.core.JavaModelManager.runOperation
(JavaModelManager.java:915)
	at org.eclipse.jdt.internal.core.JavaElement.runOperation
(JavaElement.java:512)
	at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath
(JavaProject.java:1882)
	at org.eclipse.jdt.internal.core.JavaProject.updateClassPath
(JavaProject.java:1969)
	at 
org.eclipse.jdt.internal.core.SetClasspathOperation.updateAffectedProjects
(SetClasspathOperation.java:269)
	at 
org.eclipse.jdt.internal.core.SetClasspathOperation.generateClasspathChangeDelta
s(SetClasspathOperation.java:209)
	at org.eclipse.jdt.internal.core.SetClasspathOperation.executeOperation
(SetClasspathOperation.java:110)
	at org.eclipse.jdt.internal.core.JavaModelOperation.execute
(JavaModelOperation.java:257)
	at org.eclipse.jdt.internal.core.JavaModelOperation.run
(JavaModelOperation.java:454)
	at org.eclipse.core.internal.resources.Workspace.run
(Workspace.java:1186)
	at org.eclipse.jdt.internal.core.JavaModelManager.runOperation
(JavaModelManager.java:915)
	at org.eclipse.jdt.internal.core.JavaElement.runOperation
(JavaElement.java:512)
	at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath
(JavaProject.java:1882)
	at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath
(JavaProject.java:1853)
	at com.oti.eclipsetools.internal.create.UpdateClasspathOperation.run
(UpdateClasspathOperation.java:91)
	at 
com.oti.eclipsetools.internal.create.PluginImportOperation.createProject
(PluginImportOperation.java:180)
	at com.oti.eclipsetools.internal.create.PluginImportOperation.run
(PluginImportOperation.java:100)
	at org.eclipse.core.internal.resources.Workspace.run
(Workspace.java:1186)
	at com.oti.eclipsetools.internal.create.PluginImportWizard$1.run
(PluginImportWizard.java:76)
	at org.eclipse.jface.operation.ModalContext$ModalContextThread.run
(ModalContext.java:98)
Comment 1 Philipe Mulet CLA 2001-11-21 07:41:09 EST
I have added protection against this crash. The #elements() enumeration wasn't 
protected from a case when asking again after it thinks it has no more elements.

However, I am intrigued about how this occurred. Do you remember what the 
classpath change was ? And also what were the extra project references (in case 
there was any) ?
Comment 2 Philipe Mulet CLA 2001-11-22 11:09:41 EST
The #remove function did left the ObjectSet inconsistent.
Fixed
Comment 3 Philipe Mulet CLA 2001-11-22 11:13:16 EST
*** Bug 6160 has been marked as a duplicate of this bug. ***
Comment 4 Philipe Mulet CLA 2001-11-22 11:14:22 EST
*** Bug 6176 has been marked as a duplicate of this bug. ***
Comment 5 Philipe Mulet CLA 2001-11-22 11:32:25 EST
Fixed