diff options
author | Dwayne Boone <dwayne@zeroc.com> | 2008-01-16 12:53:39 -0330 |
---|---|---|
committer | Dwayne Boone <dwayne@zeroc.com> | 2008-01-16 12:53:39 -0330 |
commit | 2f84f1c25575c5af7447d91878c47e2d1bd9b3df (patch) | |
tree | c9135e6b2034e0ec4301228a28dc3dbad6db2a17 /java/src/Ice/ObjectAdapterI.java | |
parent | Fixed multicast expect scripts (diff) | |
download | ice-2f84f1c25575c5af7447d91878c47e2d1bd9b3df.tar.bz2 ice-2f84f1c25575c5af7447d91878c47e2d1bd9b3df.tar.xz ice-2f84f1c25575c5af7447d91878c47e2d1bd9b3df.zip |
Bug 2436 - make updateLocatorRegistry thread safe
Diffstat (limited to 'java/src/Ice/ObjectAdapterI.java')
-rw-r--r-- | java/src/Ice/ObjectAdapterI.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/java/src/Ice/ObjectAdapterI.java b/java/src/Ice/ObjectAdapterI.java index 886880f54ca..7e63f990248 100644 --- a/java/src/Ice/ObjectAdapterI.java +++ b/java/src/Ice/ObjectAdapterI.java @@ -1356,13 +1356,17 @@ public final class ObjectAdapterI implements ObjectAdapter if(registerProcess && serverId.length() > 0) { - try + synchronized(this) { if(_processId == null) { Process servant = new IceInternal.ProcessI(_communicator); _processId = addWithUUID(servant).ice_getIdentity(); } + } + + try + { locatorRegistry.setServerProcessProxy(serverId, ProcessPrxHelper.uncheckedCast(createDirectProxy(_processId))); } |