diff options
Diffstat (limited to 'cli_ure/source/uno_bridge/cli_proxy.cxx')
-rw-r--r-- | cli_ure/source/uno_bridge/cli_proxy.cxx | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/cli_ure/source/uno_bridge/cli_proxy.cxx b/cli_ure/source/uno_bridge/cli_proxy.cxx index 86e5078db376..c5734c1af935 100644 --- a/cli_ure/source/uno_bridge/cli_proxy.cxx +++ b/cli_ure/source/uno_bridge/cli_proxy.cxx @@ -87,7 +87,13 @@ UnoInterfaceInfo::UnoInterfaceInfo(Bridge const * bridge, uno_Interface* unoI, } } } -UnoInterfaceInfo::~UnoInterfaceInfo() + +UnoInterfaceInfo::~UnoInterfaceInfo() ///< IDisposable UnoInterfaceInfo::Dispose() +{ + this->!UnoInterfaceInfo(); // call finalizer +} + +UnoInterfaceInfo::!UnoInterfaceInfo() ///< UnoInterfaceInfo::Finalize() { //accessing unmanaged objects is ok. m_bridge->m_uno_env->revokeInterface( @@ -124,7 +130,12 @@ UnoInterfaceProxy::UnoInterfaceProxy( } -UnoInterfaceProxy::~UnoInterfaceProxy() +UnoInterfaceProxy::~UnoInterfaceProxy() ///< IDisposable UnoInterfaceProxy::Dispose() +{ + this->!UnoInterfaceProxy(); // call finalizer +} + +UnoInterfaceProxy::!UnoInterfaceProxy() ///< UnoInterfaceProxy::Finalize() { #if OSL_DEBUG_LEVEL >= 2 sd::Trace::WriteLine(System::String::Format( @@ -140,7 +151,6 @@ UnoInterfaceProxy::~UnoInterfaceProxy() m_bridge->release(); } - System::Object^ UnoInterfaceProxy::create( Bridge * bridge, uno_Interface * pUnoI, |