summaryrefslogtreecommitdiff
path: root/java/src
diff options
context:
space:
mode:
Diffstat (limited to 'java/src')
-rw-r--r--java/src/Ice/ObjectAdapterI.java6
-rw-r--r--java/src/IceInternal/Direct.java4
2 files changed, 7 insertions, 3 deletions
diff --git a/java/src/Ice/ObjectAdapterI.java b/java/src/Ice/ObjectAdapterI.java
index 533bd4e8e0f..126a3a17d1d 100644
--- a/java/src/Ice/ObjectAdapterI.java
+++ b/java/src/Ice/ObjectAdapterI.java
@@ -384,7 +384,11 @@ public class ObjectAdapterI extends LocalObjectImpl implements ObjectAdapter
public synchronized void
incUsageCount()
{
- assert(_instance != null); // Must not be called after deactivation.
+ if(_instance == null)
+ {
+ throw new ObjectAdapterDeactivatedException();
+ }
+
assert(_usageCount >= 0);
++_usageCount;
}
diff --git a/java/src/IceInternal/Direct.java b/java/src/IceInternal/Direct.java
index 113b33e8f76..a0a715a85fd 100644
--- a/java/src/IceInternal/Direct.java
+++ b/java/src/IceInternal/Direct.java
@@ -17,10 +17,10 @@ public final class Direct
{
_current = current;
+ ((Ice.ObjectAdapterI)(_current.adapter)).incUsageCount();
+
try
{
- ((Ice.ObjectAdapterI)(_current.adapter)).incUsageCount();
-
_servant = _current.adapter.identityToServant(_current.id);
if(_servant == null && _current.id.category.length() > 0)