diff options
Diffstat (limited to 'bundles/org.eclipse.osgi/core/framework/org/eclipse/osgi/framework/internal/core/ServiceReferenceImpl.java')
-rw-r--r-- | bundles/org.eclipse.osgi/core/framework/org/eclipse/osgi/framework/internal/core/ServiceReferenceImpl.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/bundles/org.eclipse.osgi/core/framework/org/eclipse/osgi/framework/internal/core/ServiceReferenceImpl.java b/bundles/org.eclipse.osgi/core/framework/org/eclipse/osgi/framework/internal/core/ServiceReferenceImpl.java index 0c25ebdff..67875ff60 100644 --- a/bundles/org.eclipse.osgi/core/framework/org/eclipse/osgi/framework/internal/core/ServiceReferenceImpl.java +++ b/bundles/org.eclipse.osgi/core/framework/org/eclipse/osgi/framework/internal/core/ServiceReferenceImpl.java @@ -270,8 +270,9 @@ public class ServiceReferenceImpl implements ServiceReference, Comparable { return producerSource; // try the interfaces Class[] interfaces = serviceClass.getInterfaces(); + // note that getInterfaces never returns null for (int i = 0; i < interfaces.length; i++) { - producerSource = getPackageSource(serviceClass.getSuperclass(), pkgName); + producerSource = getPackageSource(interfaces[i], pkgName); if (producerSource != null) return producerSource; } |