### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.core Index: dom/org/eclipse/jdt/core/dom/MethodBinding.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/dom/org/eclipse/jdt/core/dom/MethodBinding.java,v retrieving revision 1.75.4.1 diff -u -r1.75.4.1 MethodBinding.java --- dom/org/eclipse/jdt/core/dom/MethodBinding.java 2 Jul 2006 10:11:41 -0000 1.75.4.1 +++ dom/org/eclipse/jdt/core/dom/MethodBinding.java 8 Feb 2007 03:03:02 -0000 @@ -108,8 +108,13 @@ if (annotations == null || (length = annotations.length) == 0) return AnnotationBinding.NoAnnotations; IAnnotationBinding[] domInstances = new AnnotationBinding[length]; - for (int i = 0; i < length; i++) - domInstances[i] = this.resolver.getAnnotationInstance(annotations[i]); + for (int i = 0; i < length; i++) { + IAnnotationBinding annotationInstance = this.resolver.getAnnotationInstance(annotations[i]); + if (annotationInstance == null) { + return AnnotationBinding.NoAnnotations; + } + domInstances[i] = annotationInstance; + } return domInstances; } @@ -129,8 +134,13 @@ if (annotations == null || (length = annotations.length) == 0) return AnnotationBinding.NoAnnotations; IAnnotationBinding[] domInstances =new AnnotationBinding[length]; - for (int i = 0; i < length; i++) - domInstances[i] = this.resolver.getAnnotationInstance(annotations[i]); + for (int i = 0; i < length; i++) { + IAnnotationBinding annotationInstance = this.resolver.getAnnotationInstance(annotations[i]); + if (annotationInstance == null) { + return AnnotationBinding.NoAnnotations; + } + domInstances[i] = annotationInstance; + } return domInstances; } @@ -148,7 +158,11 @@ } else { this.parameterTypes = new ITypeBinding[length]; for (int i = 0; i < length; i++) { - this.parameterTypes[i] = this.resolver.getTypeBinding(parameters[i]); + ITypeBinding typeBinding = this.resolver.getTypeBinding(parameters[i]); + if (typeBinding == null) { + return this.parameterTypes = NO_TYPE_BINDINGS; + } + this.parameterTypes[i] = typeBinding; } } return this.parameterTypes; @@ -184,7 +198,11 @@ } else { this.exceptionTypes = new ITypeBinding[length]; for (int i = 0; i < length; i++) { - this.exceptionTypes[i] = this.resolver.getTypeBinding(exceptions[i]); + ITypeBinding typeBinding = this.resolver.getTypeBinding(exceptions[i]); + if (typeBinding == null) { + return this.exceptionTypes = NO_TYPE_BINDINGS; + } + this.exceptionTypes[i] = typeBinding; } } return this.exceptionTypes; @@ -341,7 +359,11 @@ if (typeVariableBindingsLength != 0) { this.typeParameters = new ITypeBinding[typeVariableBindingsLength]; for (int i = 0; i < typeVariableBindingsLength; i++) { - typeParameters[i] = this.resolver.getTypeBinding(typeVariableBindings[i]); + ITypeBinding typeBinding = this.resolver.getTypeBinding(typeVariableBindings[i]); + if (typeBinding == null) { + return this.typeParameters = NO_TYPE_BINDINGS; + } + typeParameters[i] = typeBinding; } } else { this.typeParameters = NO_TYPE_BINDINGS; @@ -381,7 +403,11 @@ if (typeArgumentsLength != 0) { this.typeArguments = new ITypeBinding[typeArgumentsLength]; for (int i = 0; i < typeArgumentsLength; i++) { - this.typeArguments[i] = this.resolver.getTypeBinding(typeArgumentsBindings[i]); + ITypeBinding typeBinding = this.resolver.getTypeBinding(typeArgumentsBindings[i]); + if (typeBinding == null) { + return this.typeArguments = NO_TYPE_BINDINGS; + } + this.typeArguments[i] = typeBinding; } } else { this.typeArguments = NO_TYPE_BINDINGS; Index: dom/org/eclipse/jdt/core/dom/VariableBinding.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/dom/org/eclipse/jdt/core/dom/VariableBinding.java,v retrieving revision 1.50 diff -u -r1.50 VariableBinding.java --- dom/org/eclipse/jdt/core/dom/VariableBinding.java 9 Feb 2006 18:38:30 -0000 1.50 +++ dom/org/eclipse/jdt/core/dom/VariableBinding.java 8 Feb 2007 03:03:03 -0000 @@ -48,8 +48,13 @@ int length = internalAnnotations == null ? 0 : internalAnnotations.length; IAnnotationBinding[] domInstances = length == 0 ? AnnotationBinding.NoAnnotations : new AnnotationBinding[length]; - for (int i = 0; i < length; i++) - domInstances[i] = this.resolver.getAnnotationInstance(internalAnnotations[i]); + for (int i = 0; i < length; i++) { + IAnnotationBinding annotationInstance = this.resolver.getAnnotationInstance(internalAnnotations[i]); + if (annotationInstance == null) { + return AnnotationBinding.NoAnnotations; + } + domInstances[i] = annotationInstance; + } return domInstances; } Index: dom/org/eclipse/jdt/core/dom/PackageBinding.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/dom/org/eclipse/jdt/core/dom/PackageBinding.java,v retrieving revision 1.31 diff -u -r1.31 PackageBinding.java --- dom/org/eclipse/jdt/core/dom/PackageBinding.java 29 Mar 2006 02:54:51 -0000 1.31 +++ dom/org/eclipse/jdt/core/dom/PackageBinding.java 8 Feb 2007 03:03:02 -0000 @@ -106,8 +106,10 @@ IAnnotationBinding[] domInstances = new AnnotationBinding[total]; for (int a = 0; a < total; a++) { domInstances[a] = this.resolver.getAnnotationInstance(allInstances[a]); - if (domInstances[a] == null) // not resolving binding - return AnnotationBinding.NoAnnotations; + if (domInstances[a] == null) { + // not resolving binding + return AnnotationBinding.NoAnnotations; + } } return domInstances; } Index: dom/org/eclipse/jdt/core/dom/TypeBinding.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/dom/org/eclipse/jdt/core/dom/TypeBinding.java,v retrieving revision 1.115.4.1 diff -u -r1.115.4.1 TypeBinding.java --- dom/org/eclipse/jdt/core/dom/TypeBinding.java 2 Jul 2006 10:11:41 -0000 1.115.4.1 +++ dom/org/eclipse/jdt/core/dom/TypeBinding.java 8 Feb 2007 03:03:03 -0000 @@ -84,8 +84,13 @@ int length = internalAnnotations == null ? 0 : internalAnnotations.length; if (length > 0) { domInstances = new AnnotationBinding[length]; - for (int i = 0; i < length; i++) - domInstances[i] = this.resolver.getAnnotationInstance(internalAnnotations[i]); + for (int i = 0; i < length; i++) { + IAnnotationBinding annotationInstance = this.resolver.getAnnotationInstance(internalAnnotations[i]); + if (annotationInstance == null) { + return AnnotationBinding.NoAnnotations; + } + domInstances[i] = annotationInstance; + } } } return domInstances; @@ -241,7 +246,11 @@ int length = members.length; ITypeBinding[] newMembers = new ITypeBinding[length]; for (int i = 0; i < length; i++) { - newMembers[i] = this.resolver.getTypeBinding(members[i]); + ITypeBinding typeBinding = this.resolver.getTypeBinding(members[i]); + if (typeBinding == null) { + return NO_TYPE_BINDINGS; + } + newMembers[i] = typeBinding; } return newMembers; } @@ -392,7 +401,11 @@ } else { ITypeBinding[] newInterfaces = new ITypeBinding[length]; for (int i = 0; i < length; i++) { - newInterfaces[i] = this.resolver.getTypeBinding(interfaces[i]); + ITypeBinding typeBinding = this.resolver.getTypeBinding(interfaces[i]); + if (typeBinding == null) { + return NO_TYPE_BINDINGS; + } + newInterfaces[i] = typeBinding; } return newInterfaces; } @@ -470,7 +483,9 @@ IMethod declaringMethod = (IMethod) declaringTypeBinding.getJavaElement(); return (JavaElement) declaringMethod.getTypeParameter(typeVariableName); } else { - declaringTypeBinding = this.resolver.getTypeBinding((org.eclipse.jdt.internal.compiler.lookup.TypeBinding) declaringElement); + ITypeBinding typeBinding2 = this.resolver.getTypeBinding((org.eclipse.jdt.internal.compiler.lookup.TypeBinding) declaringElement); + if (typeBinding2 == null) return null; + declaringTypeBinding = typeBinding2; IType declaringType = (IType) declaringTypeBinding.getJavaElement(); return (JavaElement) declaringType.getTypeParameter(typeVariableName); } @@ -827,7 +842,11 @@ int argumentsLength = arguments.length; ITypeBinding[] typeArguments = new ITypeBinding[argumentsLength]; for (int i = 0; i < argumentsLength; i++) { - typeArguments[i] = this.resolver.getTypeBinding(arguments[i]); + ITypeBinding typeBinding = this.resolver.getTypeBinding(arguments[i]); + if (typeBinding == null) { + return NO_TYPE_BINDINGS; + } + typeArguments[i] = typeBinding; } return typeArguments; } @@ -863,11 +882,19 @@ ITypeBinding[] typeBounds = new ITypeBinding[boundsLength]; int boundsIndex = 0; if (firstClassOrArrayBound != null) { - typeBounds[boundsIndex++] = this.resolver.getTypeBinding(firstClassOrArrayBound); + ITypeBinding typeBinding = this.resolver.getTypeBinding(firstClassOrArrayBound); + if (typeBinding == null) { + return NO_TYPE_BINDINGS; + } + typeBounds[boundsIndex++] = typeBinding; } if (superinterfaces != null) { for (int i = 0; i < superinterfacesLength; i++, boundsIndex++) { - typeBounds[boundsIndex] = this.resolver.getTypeBinding(superinterfaces[i]); + ITypeBinding typeBinding = this.resolver.getTypeBinding(superinterfaces[i]); + if (typeBinding == null) { + return NO_TYPE_BINDINGS; + } + typeBounds[boundsIndex] = typeBinding; } } return typeBounds; @@ -891,7 +918,11 @@ if (typeVariableBindingsLength != 0) { ITypeBinding[] typeParameters = new ITypeBinding[typeVariableBindingsLength]; for (int i = 0; i < typeVariableBindingsLength; i++) { - typeParameters[i] = this.resolver.getTypeBinding(typeVariableBindings[i]); + ITypeBinding typeBinding = this.resolver.getTypeBinding(typeVariableBindings[i]); + if (typeBinding == null) { + return NO_TYPE_BINDINGS; + } + typeParameters[i] = typeBinding; } return typeParameters; } Index: buildnotes_jdt-core.html =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/buildnotes_jdt-core.html,v retrieving revision 1.5274.2.86 diff -u -r1.5274.2.86 buildnotes_jdt-core.html --- buildnotes_jdt-core.html 7 Feb 2007 16:20:36 -0000 1.5274.2.86 +++ buildnotes_jdt-core.html 8 Feb 2007 03:03:02 -0000 @@ -37,12 +37,24 @@ + +


+Eclipse Platform Build Notes
+Java Development Tooling Core

+Eclipse SDK 3.2.2 - 8th February 2007 - 3.2.2 RELEASE +
Project org.eclipse.jdt.core v_686_R32x +(cvs). +

What's new in this drop

+ +

Problem Reports Fixed

+172633 +NPEs while starting my workspace


Eclipse Platform Build Notes
Java Development Tooling Core

-Eclipse SDK 3.2.2 - 25th January 2007 - 3.2.2 RELEASE +Eclipse SDK 3.2.2 - 25th January 2007
Project org.eclipse.jdt.core v_685_R32x (cvs).

What's new in this drop