diff options
author | jrellerme | 2009-02-26 12:17:03 +0000 |
---|---|---|
committer | jrellerme | 2009-02-26 12:17:03 +0000 |
commit | f5d59121b03ee0dc2d74804961400d67b132cd61 (patch) | |
tree | 90faed6c5456ed8566916e8050a16c1f3cd07ad5 | |
parent | 1b93ffb2bfb6c9010ea05135bd7b76c441495250 (diff) | |
download | org.eclipse.ecf-f5d59121b03ee0dc2d74804961400d67b132cd61.tar.gz org.eclipse.ecf-f5d59121b03ee0dc2d74804961400d67b132cd61.tar.xz org.eclipse.ecf-f5d59121b03ee0dc2d74804961400d67b132cd61.zip |
fix for #255305
-rw-r--r-- | protocols/bundles/ch.ethz.iks.r_osgi.remote/META-INF/MANIFEST.MF | 2 | ||||
-rw-r--r-- | protocols/bundles/ch.ethz.iks.r_osgi.remote/src/main/java/ch/ethz/iks/r_osgi/impl/ProxyGenerator.java | 37 |
2 files changed, 16 insertions, 23 deletions
diff --git a/protocols/bundles/ch.ethz.iks.r_osgi.remote/META-INF/MANIFEST.MF b/protocols/bundles/ch.ethz.iks.r_osgi.remote/META-INF/MANIFEST.MF index 37e8f5301..dcf2345e3 100644 --- a/protocols/bundles/ch.ethz.iks.r_osgi.remote/META-INF/MANIFEST.MF +++ b/protocols/bundles/ch.ethz.iks.r_osgi.remote/META-INF/MANIFEST.MF @@ -4,7 +4,7 @@ Bundle-Name: %plugin.name Bundle-SymbolicName: ch.ethz.iks.r_osgi.remote Bundle-Version: 1.0.0.RC4_qualifier Bundle-Vendor: %plugin.provider -Import-Package: org.objectweb.asm;version="3.0.0", +Import-Package: org.objectweb.asm;version="3.1.0", org.osgi.framework, org.osgi.service.event, org.osgi.service.log, diff --git a/protocols/bundles/ch.ethz.iks.r_osgi.remote/src/main/java/ch/ethz/iks/r_osgi/impl/ProxyGenerator.java b/protocols/bundles/ch.ethz.iks.r_osgi.remote/src/main/java/ch/ethz/iks/r_osgi/impl/ProxyGenerator.java index e8680b3cb..6662ddd57 100644 --- a/protocols/bundles/ch.ethz.iks.r_osgi.remote/src/main/java/ch/ethz/iks/r_osgi/impl/ProxyGenerator.java +++ b/protocols/bundles/ch.ethz.iks.r_osgi.remote/src/main/java/ch/ethz/iks/r_osgi/impl/ProxyGenerator.java @@ -439,11 +439,12 @@ class ProxyGenerator implements ClassVisitor, Opcodes { ifaces.add("org/osgi/framework/BundleActivator"); //$NON-NLS-1$ ifaces.addAll(Arrays.asList(serviceInterfaces)); // V1_1 - writer.visit( - (version >= V1_5 && RemoteOSGiServiceImpl.IS_JAVA5) ? V1_5 - : V1_2, ACC_PUBLIC + ACC_SUPER, implName, null, - superName, (String[]) ifaces.toArray(new String[ifaces - .size()])); + writer + .visit( + (version >= V1_5 && RemoteOSGiServiceImpl.IS_JAVA5) ? V1_5 + : V1_2, ACC_PUBLIC + ACC_SUPER, + implName, null, superName, (String[]) ifaces + .toArray(new String[ifaces.size()])); if (java.util.Arrays.asList(interfaces).contains( "ch/ethz/iks/r_osgi/SmartProxy")) { //$NON-NLS-1$ @@ -453,10 +454,12 @@ class ProxyGenerator implements ClassVisitor, Opcodes { } else { // we have an interface - writer.visit( - (version >= V1_5 && RemoteOSGiServiceImpl.IS_JAVA5) ? V1_5 - : V1_2, ACC_PUBLIC + ACC_SUPER, implName, null, - "java/lang/Object", serviceInterfaces); //$NON-NLS-1$ + writer + .visit( + (version >= V1_5 && RemoteOSGiServiceImpl.IS_JAVA5) ? V1_5 + : V1_2, ACC_PUBLIC + ACC_SUPER, + implName, null, + "java/lang/Object", serviceInterfaces); //$NON-NLS-1$ if (RemoteOSGiServiceImpl.PROXY_DEBUG) { RemoteOSGiServiceImpl.log.log(LogService.LOG_DEBUG, "Creating Proxy Bundle from Interfaces " //$NON-NLS-1$ @@ -863,23 +866,13 @@ class ProxyGenerator implements ClassVisitor, Opcodes { method.visitInsn(returnType.getOpcode(IRETURN)); break; case Type.ARRAY: - final StringBuffer a = new StringBuffer(); - final int esort = returnType.getElementType().getSort(); - if (esort < Type.ARRAY) { - for (int i = 0; i < returnType.getDimensions(); i++) { - a.append("["); //$NON-NLS-1$ - } - // primitive array - method.visitTypeInsn(CHECKCAST, a.toString() - + returnType.getElementType().toString()); - } else { - // object array + for (int i = 0; i < returnType.getDimensions(); i++) { a.append("["); //$NON-NLS-1$ - method.visitTypeInsn(CHECKCAST, a.toString() - + returnType.getInternalName() + ";"); //$NON-NLS-1$ } + method.visitTypeInsn(CHECKCAST, a.toString() + + returnType.getElementType().toString()); method.visitInsn(ARETURN); break; default: |