### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.core 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.132 diff -u -r1.132 TypeBinding.java --- dom/org/eclipse/jdt/core/dom/TypeBinding.java 10 May 2007 00:16:04 -0000 1.132 +++ dom/org/eclipse/jdt/core/dom/TypeBinding.java 22 Aug 2007 16:40:46 -0000 @@ -12,6 +12,8 @@ package org.eclipse.jdt.core.dom; import java.io.File; +import java.util.ArrayList; +import java.util.List; import org.eclipse.core.resources.IContainer; import org.eclipse.core.resources.IWorkspaceRoot; @@ -102,15 +104,16 @@ org.eclipse.jdt.internal.compiler.lookup.AnnotationBinding[] internalAnnotations = refType.getAnnotations(); int length = internalAnnotations == null ? 0 : internalAnnotations.length; if (length != 0) { - IAnnotationBinding[] domInstances = new IAnnotationBinding[length]; + List domInstances = new ArrayList(); for (int i = 0; i < length; i++) { final IAnnotationBinding annotationInstance = this.resolver.getAnnotationInstance(internalAnnotations[i]); - if (annotationInstance == null) { - return AnnotationBinding.NoAnnotations; + if (annotationInstance != null) { + domInstances.add(annotationInstance); } - domInstances[i] = annotationInstance; } - return this.annotations = domInstances; + this.annotations = new IAnnotationBinding[domInstances.size()]; + domInstances.toArray(this.annotations); + return this.annotations; } } return this.annotations = AnnotationBinding.NoAnnotations;