summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2019-12-05 16:34:52 +0100
committerJose <jose@zeroc.com>2019-12-05 16:34:52 +0100
commit1acaa2112ff6a6a19bffeecebe83e1764903acdb (patch)
treecd38476cc7109589f21b404df18f2d8feb891553
parentFix nodiscard warnings report by Visual Studio 2019 (16.4.0) (diff)
downloadice-1acaa2112ff6a6a19bffeecebe83e1764903acdb.tar.bz2
ice-1acaa2112ff6a6a19bffeecebe83e1764903acdb.tar.xz
ice-1acaa2112ff6a6a19bffeecebe83e1764903acdb.zip
Ignore null locator replies
-rw-r--r--cpp/src/IceLocatorDiscovery/PluginI.cpp13
-rw-r--r--csharp/src/IceLocatorDiscovery/PluginI.cs13
-rw-r--r--java-compat/src/IceLocatorDiscovery/src/main/java/IceLocatorDiscovery/PluginI.java12
-rw-r--r--java/src/IceLocatorDiscovery/src/main/java/com/zeroc/IceLocatorDiscovery/PluginI.java12
4 files changed, 43 insertions, 7 deletions
diff --git a/cpp/src/IceLocatorDiscovery/PluginI.cpp b/cpp/src/IceLocatorDiscovery/PluginI.cpp
index 92295c261c0..864e3c272c8 100644
--- a/cpp/src/IceLocatorDiscovery/PluginI.cpp
+++ b/cpp/src/IceLocatorDiscovery/PluginI.cpp
@@ -706,7 +706,18 @@ void
LocatorI::foundLocator(const Ice::LocatorPrxPtr& locator)
{
Lock sync(*this);
- if(!locator || (!_instanceName.empty() && locator->ice_getIdentity().category != _instanceName))
+
+ if(!locator)
+ {
+ if(_traceLevel > 2)
+ {
+ Ice::Trace out(_lookup->ice_getCommunicator()->getLogger(), "Lookup");
+ out << "ignoring locator reply: (null locator)";
+ }
+ return;
+ }
+
+ if(!_instanceName.empty() && locator->ice_getIdentity().category != _instanceName)
{
if(_traceLevel > 2)
{
diff --git a/csharp/src/IceLocatorDiscovery/PluginI.cs b/csharp/src/IceLocatorDiscovery/PluginI.cs
index 2bc28527f1b..a69150639e5 100644
--- a/csharp/src/IceLocatorDiscovery/PluginI.cs
+++ b/csharp/src/IceLocatorDiscovery/PluginI.cs
@@ -267,8 +267,17 @@ namespace IceLocatorDiscovery
{
lock(this)
{
- if(locator == null ||
- (_instanceName.Length > 0 && !locator.ice_getIdentity().category.Equals(_instanceName)))
+ if(locator == null)
+ {
+ if(_traceLevel > 2)
+ {
+ _lookup.ice_getCommunicator().getLogger().trace("Lookup",
+ "ignoring locator reply: (null locator)");
+ }
+ return;
+ }
+
+ if(_instanceName.Length > 0 && !locator.ice_getIdentity().category.Equals(_instanceName))
{
if(_traceLevel > 2)
{
diff --git a/java-compat/src/IceLocatorDiscovery/src/main/java/IceLocatorDiscovery/PluginI.java b/java-compat/src/IceLocatorDiscovery/src/main/java/IceLocatorDiscovery/PluginI.java
index a2386d2183a..87795097790 100644
--- a/java-compat/src/IceLocatorDiscovery/src/main/java/IceLocatorDiscovery/PluginI.java
+++ b/java-compat/src/IceLocatorDiscovery/src/main/java/IceLocatorDiscovery/PluginI.java
@@ -271,8 +271,16 @@ class PluginI implements Plugin
public synchronized void
foundLocator(Ice.LocatorPrx locator)
{
- if(locator == null ||
- (!_instanceName.isEmpty() && !locator.ice_getIdentity().category.equals(_instanceName)))
+ if(locator == null)
+ {
+ if(_traceLevel > 2)
+ {
+ _lookup.ice_getCommunicator().getLogger().trace("Lookup", "ignoring locator reply: (null locator)");
+ }
+ return;
+ }
+
+ if(!_instanceName.isEmpty() && !locator.ice_getIdentity().category.equals(_instanceName))
{
if(_traceLevel > 2)
{
diff --git a/java/src/IceLocatorDiscovery/src/main/java/com/zeroc/IceLocatorDiscovery/PluginI.java b/java/src/IceLocatorDiscovery/src/main/java/com/zeroc/IceLocatorDiscovery/PluginI.java
index 07c709c221f..6ba12fd52ed 100644
--- a/java/src/IceLocatorDiscovery/src/main/java/com/zeroc/IceLocatorDiscovery/PluginI.java
+++ b/java/src/IceLocatorDiscovery/src/main/java/com/zeroc/IceLocatorDiscovery/PluginI.java
@@ -268,8 +268,16 @@ class PluginI implements Plugin
public synchronized void foundLocator(com.zeroc.Ice.LocatorPrx locator)
{
- if(locator == null ||
- (!_instanceName.isEmpty() && !locator.ice_getIdentity().category.equals(_instanceName)))
+ if(locator == null)
+ {
+ if(_traceLevel > 2)
+ {
+ _lookup.ice_getCommunicator().getLogger().trace("Lookup", "ignoring locator reply: (null locator)");
+ }
+ return;
+ }
+
+ if(!_instanceName.isEmpty() && !locator.ice_getIdentity().category.equals(_instanceName))
{
if(_traceLevel > 2)
{