summaryrefslogtreecommitdiff
path: root/jurt
diff options
context:
space:
mode:
authorRĂ¼diger Timm <rt@openoffice.org>2006-01-09 08:48:31 +0000
committerRĂ¼diger Timm <rt@openoffice.org>2006-01-09 08:48:31 +0000
commitafd6e95d8bb9f967039448c95895aff779a06984 (patch)
treee43181220f243a8b91262762479402f61e0deb53 /jurt
parent685b7dc5658b3fb5c2462fa6d046c77e9fe39040 (diff)
INTEGRATION: CWS mtg1 (1.6.4); FILE MERGED
2005/11/16 14:38:23 sb 1.6.4.1: #i57753# Avoid long-running finalize methods.
Diffstat (limited to 'jurt')
-rw-r--r--jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java21
1 files changed, 13 insertions, 8 deletions
diff --git a/jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java b/jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java
index 7674a0a8a..6e16f2058 100644
--- a/jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java
+++ b/jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java
@@ -4,9 +4,9 @@
*
* $RCSfile: ProxyFactory.java,v $
*
- * $Revision: 1.6 $
+ * $Revision: 1.7 $
*
- * last change: $Author: hr $ $Date: 2005-09-23 11:50:15 $
+ * last change: $Author: rt $ $Date: 2006-01-09 09:48:31 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -36,6 +36,7 @@
package com.sun.star.lib.uno.bridges.java_remote;
import com.sun.star.bridge.XBridge;
+import com.sun.star.lib.util.AsynchronousFinalizer;
import com.sun.star.uno.IQueryInterface;
import com.sun.star.uno.Type;
import com.sun.star.uno.UnoRuntime;
@@ -141,12 +142,16 @@ final class ProxyFactory {
}
}
- protected void finalize() throws Throwable {
- try {
- request("release", null);
- } finally {
- decrementDebugCount();
- }
+ protected void finalize() {
+ AsynchronousFinalizer.add(new AsynchronousFinalizer.Job() {
+ public void run() throws Throwable {
+ try {
+ request("release", null);
+ } finally {
+ decrementDebugCount();
+ }
+ }
+ });
}
private Object request(String operation, Object[] args) throws Throwable