Fixed for i#103021
[ooovba.git] / applied_patches / 0128-sw-remove-csv-lock.diff
blob9c2c9b0edcfd5567e6e3f2e48de9698399a74c77
1 diff --git a/source/ui/dbui/dbmgr.cxx b/source/ui/dbui/dbmgr.cxx
2 index f0f6090..34f84d7 100644
3 --- sw/source/ui/dbui/dbmgr.cxx
4 +++ sw/source/ui/dbui/dbmgr.cxx
5 @@ -1753,6 +1753,7 @@ ULONG SwNewDBMgr::GetColumnFmt( const String& rDBName,
6 uno::Reference< XConnection> xConnection;
7 sal_Bool bUseMergeData = sal_False;
8 uno::Reference< XColumnsSupplier> xColsSupp;
9 + bool bDisposeConnection = false;
10 if(pImpl->pMergeData &&
11 pImpl->pMergeData->sDataSource.equals(rDBName) && pImpl->pMergeData->sCommand.equals(rTableName))
13 @@ -1777,6 +1778,7 @@ ULONG SwNewDBMgr::GetColumnFmt( const String& rDBName,
15 rtl::OUString sDBName(rDBName);
16 xConnection = RegisterConnection( sDBName );
17 + bDisposeConnection = true;
19 if(bUseMergeData)
20 pImpl->pMergeData->xConnection = xConnection;
21 @@ -1807,6 +1809,10 @@ ULONG SwNewDBMgr::GetColumnFmt( const String& rDBName,
23 ::comphelper::disposeComponent( xColsSupp );
25 + if(bDisposeConnection)
26 + {
27 + ::comphelper::disposeComponent( xConnection );
28 + }
30 else
31 nRet = pNFmtr->GetFormatIndex( NF_NUMBER_STANDARD, LANGUAGE_SYSTEM );