connectivity/source/cpool/ZPoolCollection.cxx |    9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

New commits:
commit 0cb63cd392a9ee7b355028722121ac1ccead7336
Author:     Julien Nabet <serval2...@yahoo.fr>
AuthorDate: Sat Apr 20 12:18:24 2024 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Sun Apr 21 20:58:13 2024 +0200

    tdf#144256: Missing destruction of FirebirdDriver, OSDBCDriverManager
    
    ... , OPoolCollection
    
    However destruction is called when closing LO, not when just closing the 
file.
    
    Change-Id: Iacb09b73de49b9635240d3b43e721b8b02d35afd
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166370
    Tested-by: Julien Nabet <serval2...@yahoo.fr>
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/connectivity/source/cpool/ZPoolCollection.cxx 
b/connectivity/source/cpool/ZPoolCollection.cxx
index 47167ed5700a..16f415fc4f4e 100644
--- a/connectivity/source/cpool/ZPoolCollection.cxx
+++ b/connectivity/source/cpool/ZPoolCollection.cxx
@@ -76,7 +76,6 @@ OPoolCollection::OPoolCollection(const Reference< 
XComponentContext >& _rxContex
     m_xManager = DriverManager::create( m_xContext );
 
     m_xProxyFactory = ProxyFactory::create( m_xContext );
-
     Reference<XPropertySet> xProp(getConfigPoolRoot(),UNO_QUERY);
     if ( xProp.is() )
         xProp->addPropertyChangeListener(getEnablePoolingNodeName(),this);
@@ -371,9 +370,9 @@ void SAL_CALL OPoolCollection::queryTermination( const 
EventObject& /*Event*/ )
 {
 }
 
-void SAL_CALL OPoolCollection::notifyTermination( const EventObject& /*Event*/ 
)
+void SAL_CALL OPoolCollection::notifyTermination( const EventObject& Event )
 {
-    clearDesktop();
+    disposing(Event);
 }
 
 void SAL_CALL OPoolCollection::disposing( const EventObject& Source )
@@ -402,6 +401,10 @@ void SAL_CALL OPoolCollection::disposing( const 
EventObject& Source )
             TOOLS_WARN_EXCEPTION("connectivity.cpool", "");
         }
     }
+    m_xConfigNode.clear();
+    m_xProxyFactory.clear();
+    m_xManager.clear();
+    m_xContext.clear();
 }
 
 void SAL_CALL OPoolCollection::propertyChange( const 
css::beans::PropertyChangeEvent& evt )

Reply via email to