Mucked up the fix for primitive arrays so it didn't work for non-primitive arrays. ARGH!
diff --git a/plugins/org.eclipse.jem.proxy/proxyCommon/org/eclipse/jem/internal/proxy/common/MapTypes.java b/plugins/org.eclipse.jem.proxy/proxyCommon/org/eclipse/jem/internal/proxy/common/MapTypes.java index 70ed690..20b3fa5 100644 --- a/plugins/org.eclipse.jem.proxy/proxyCommon/org/eclipse/jem/internal/proxy/common/MapTypes.java +++ b/plugins/org.eclipse.jem.proxy/proxyCommon/org/eclipse/jem/internal/proxy/common/MapTypes.java
@@ -10,7 +10,7 @@ *******************************************************************************/ /* * $RCSfile: MapTypes.java,v $ - * $Revision: 1.6 $ $Date: 2005/07/13 15:56:31 $ + * $Revision: 1.7 $ $Date: 2005/07/14 15:14:18 $ */ package org.eclipse.jem.internal.proxy.common; @@ -103,8 +103,8 @@ int dims = jniName.lastIndexOf('[')+1; // Number of dimensions int startType = dims; StringBuffer fName = new StringBuffer(jniName.length()+(2*dims)); - if (jniName.charAt(dims) == 'L') - fName.append(jniName.substring(startType, jniName.length()-1)); // For "Ljava.lang.String;" return "java.lang.String" + if (jniName.charAt(startType) == 'L') + fName.append(jniName.substring(startType+1, jniName.length()-1)); // For "[Ljava.lang.String;" return "java.lang.String" else if (jniName.length() == startType+1) { // Possible primitive Class type = (Class) MAP_SHORTSIG_TO_TYPE.get(jniName.substring(startType, startType+1));