From f508d7d7cf7811062c5466efa2b3bf7f921947d8 Mon Sep 17 00:00:00 2001 From: Jose Date: Tue, 3 Jan 2012 22:35:03 +0100 Subject: ICE-3318 Java finalizers are problematic --- java/src/IceInternal/ObjectAdapterFactory.java | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'java/src/IceInternal/ObjectAdapterFactory.java') diff --git a/java/src/IceInternal/ObjectAdapterFactory.java b/java/src/IceInternal/ObjectAdapterFactory.java index c9cb79a13ec..804c309328d 100644 --- a/java/src/IceInternal/ObjectAdapterFactory.java +++ b/java/src/IceInternal/ObjectAdapterFactory.java @@ -206,11 +206,19 @@ public final class ObjectAdapterFactory finalize() throws Throwable { - IceUtilInternal.Assert.FinalizerAssert(_instance == null); - IceUtilInternal.Assert.FinalizerAssert(_communicator == null); - //IceUtilInternal.Assert.FinalizerAssert(_adapters.isEmpty()) - - super.finalize(); + try + { + IceUtilInternal.Assert.FinalizerAssert(_instance == null); + IceUtilInternal.Assert.FinalizerAssert(_communicator == null); + IceUtilInternal.Assert.FinalizerAssert(_adapters.isEmpty()); + } + catch(java.lang.Exception ex) + { + } + finally + { + super.finalize(); + } } private Instance _instance; -- cgit v1.2.3