### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.debug Index: eval/org/eclipse/jdt/internal/debug/eval/ast/engine/AbstractRuntimeContext.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.debug/eval/org/eclipse/jdt/internal/debug/eval/ast/engine/AbstractRuntimeContext.java,v retrieving revision 1.9 diff -u -r1.9 AbstractRuntimeContext.java --- eval/org/eclipse/jdt/internal/debug/eval/ast/engine/AbstractRuntimeContext.java 22 Mar 2010 16:18:00 -0000 1.9 +++ eval/org/eclipse/jdt/internal/debug/eval/ast/engine/AbstractRuntimeContext.java 22 Mar 2010 16:43:49 -0000 @@ -13,11 +13,13 @@ import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; +import org.eclipse.jdi.internal.TypeImpl; import org.eclipse.jdt.core.IJavaProject; import org.eclipse.jdt.debug.core.IJavaClassObject; import org.eclipse.jdt.debug.core.IJavaClassType; import org.eclipse.jdt.debug.core.IJavaFieldVariable; import org.eclipse.jdt.debug.core.IJavaObject; +import org.eclipse.jdt.debug.core.IJavaReferenceType; import org.eclipse.jdt.debug.core.IJavaType; import org.eclipse.jdt.debug.core.IJavaValue; import org.eclipse.jdt.internal.debug.core.JDIDebugPlugin; @@ -101,11 +103,15 @@ * @throws CoreException if loading fails */ protected IJavaClassObject classForName(String qualifiedName, IJavaObject loader) throws CoreException { - IJavaType[] types = getVM().getJavaTypes(qualifiedName); + String tname = qualifiedName; + if (tname.startsWith("[")) { //$NON-NLS-1$ + tname = TypeImpl.signatureToName(qualifiedName); + } + IJavaType[] types = getVM().getJavaTypes(tname); if (types != null && types.length > 0) { // find the one with the right class loader for (int i = 0; i < types.length; i++) { - IJavaClassType type = (IJavaClassType) types[i]; + IJavaReferenceType type = (IJavaReferenceType) types[i]; IJavaObject cloader = type.getClassLoaderObject(); if (isCompatibleLoader(loader, cloader)) { return type.getClassObject();