summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
Diffstat (limited to 'java')
-rw-r--r--java/src/Ice/src/main/java/com/zeroc/IceInternal/ConnectRequestHandler.java15
1 files changed, 9 insertions, 6 deletions
diff --git a/java/src/Ice/src/main/java/com/zeroc/IceInternal/ConnectRequestHandler.java b/java/src/Ice/src/main/java/com/zeroc/IceInternal/ConnectRequestHandler.java
index 47b2d4ce287..bf98fe557e2 100644
--- a/java/src/Ice/src/main/java/com/zeroc/IceInternal/ConnectRequestHandler.java
+++ b/java/src/Ice/src/main/java/com/zeroc/IceInternal/ConnectRequestHandler.java
@@ -138,13 +138,17 @@ public class ConnectRequestHandler
}
@Override
- public synchronized void
+ public void
setException(final com.zeroc.Ice.LocalException ex)
{
- assert(!_initialized && _exception == null);
- _exception = ex;
- _proxies.clear();
- _proxy = null; // Break cyclic reference count.
+ synchronized(this)
+ {
+ assert(!_initialized && _exception == null);
+ _exception = ex;
+ _proxies.clear();
+ _proxy = null; // Break cyclic reference count.
+ notifyAll();
+ }
//
// NOTE: remove the request handler *before* notifying the
@@ -169,7 +173,6 @@ public class ConnectRequestHandler
}
}
_requests.clear();
- notifyAll();
}
//