Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'providers/bundles/org.eclipse.ecf.provider.jmdns')
-rw-r--r--providers/bundles/org.eclipse.ecf.provider.jmdns/src/org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/providers/bundles/org.eclipse.ecf.provider.jmdns/src/org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.java b/providers/bundles/org.eclipse.ecf.provider.jmdns/src/org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.java
index f3c42233b..382675880 100644
--- a/providers/bundles/org.eclipse.ecf.provider.jmdns/src/org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.java
+++ b/providers/bundles/org.eclipse.ecf.provider.jmdns/src/org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.java
@@ -196,7 +196,11 @@ public class JMDNSDiscoveryContainer extends AbstractDiscoveryContainerAdapter i
ServiceInfo[] infos = jmdns.list(type.getInternal());
for (int i = 0; i < infos.length; i++) {
try {
- serviceInfos.add(createIServiceInfoFromServiceInfo(infos[i]));
+ if (infos[i] != null) {
+ IServiceInfo si = createIServiceInfoFromServiceInfo(infos[i]);
+ if (si != null)
+ serviceInfos.add(si);
+ }
} catch (Exception e) {
Trace.catching(JMDNSPlugin.PLUGIN_ID, JMDNSDebugOptions.EXCEPTIONS_CATCHING, this.getClass(), "getServices", e); //$NON-NLS-1$
}
@@ -293,6 +297,7 @@ public class JMDNSDiscoveryContainer extends AbstractDiscoveryContainerAdapter i
added = true;
}
}
+ // Fire notification outside synchronized block
if (added) {
try {
fireTypeDiscovered(serviceType);

Back to the top