dbaccess/source/core/api/KeySet.cxx | 8 ++++---- dbaccess/source/core/api/KeySet.hxx | 4 +++- dbaccess/source/core/api/OptimisticSet.cxx | 3 ++- 3 files changed, 9 insertions(+), 6 deletions(-)
New commits: commit dff484283dcd562f60840fb9800800187c013b87 Author: Noel Grandin <[email protected]> AuthorDate: Thu Sep 12 19:41:16 2024 +0200 Commit: Noel Grandin <[email protected]> CommitDate: Fri Sep 13 12:45:54 2024 +0200 use more concrete UNO types in dbaccess Change-Id: I017d4fd7131735dfd2dba6e1b046fbe691522745 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173280 Tested-by: Jenkins Reviewed-by: Noel Grandin <[email protected]> diff --git a/dbaccess/source/core/api/KeySet.cxx b/dbaccess/source/core/api/KeySet.cxx index 511338e30d9b..f931adbab02f 100644 --- a/dbaccess/source/core/api/KeySet.cxx +++ b/dbaccess/source/core/api/KeySet.cxx @@ -311,7 +311,7 @@ void OKeySet::construct(const Reference< XResultSet>& _xDriverSet, const OUStrin // the first row is empty because it's now easier for us to distinguish when we are beforefirst or first // without extra variable to be set - OKeySetValue keySetValue{nullptr,0,Reference<XRow>()}; + OKeySetValue keySetValue{nullptr,0,nullptr}; m_aKeyMap.emplace(0, keySetValue); m_aKeyIter = m_aKeyMap.begin(); } @@ -321,7 +321,7 @@ void OKeySet::reset(const Reference< XResultSet>& _xDriverSet) OCacheSet::construct(_xDriverSet, m_sRowSetFilter); m_bRowCountFinal = false; m_aKeyMap.clear(); - OKeySetValue keySetValue{nullptr,0,Reference<XRow>()}; + OKeySetValue keySetValue{nullptr,0,nullptr}; m_aKeyMap.emplace(0,keySetValue); m_aKeyIter = m_aKeyMap.begin(); } @@ -752,7 +752,7 @@ void OKeySet::executeInsert( const ORowSetRow& _rInsertRow,const OUString& i_sSQ ORowSetRow aKeyRow = new connectivity::ORowVector< ORowSetValue >(m_pKeyColumnNames->size()); copyRowValue(_rInsertRow,aKeyRow,aKeyIter->first + 1); - m_aKeyIter = m_aKeyMap.emplace( aKeyIter->first + 1, OKeySetValue{aKeyRow,1,Reference<XRow>()} ).first; + m_aKeyIter = m_aKeyMap.emplace( aKeyIter->first + 1, OKeySetValue{aKeyRow,1,nullptr} ).first; // now we set the bookmark for this row (*_rInsertRow)[0] = Any(static_cast<sal_Int32>(m_aKeyIter->first)); tryRefetch(_rInsertRow,bRefetch); @@ -1197,7 +1197,7 @@ bool OKeySet::fetchRow() aIter->fill(rColDesc.nPosition, rColDesc.nType, m_xRow); ++aIter; } - m_aKeyIter = m_aKeyMap.emplace( m_aKeyMap.rbegin()->first+1,OKeySetValue{aKeyRow,0,Reference<XRow>()} ).first; + m_aKeyIter = m_aKeyMap.emplace( m_aKeyMap.rbegin()->first+1,OKeySetValue{aKeyRow,0,nullptr} ).first; } else m_bRowCountFinal = true; diff --git a/dbaccess/source/core/api/KeySet.hxx b/dbaccess/source/core/api/KeySet.hxx index c5b78811a814..37cde22d7e32 100644 --- a/dbaccess/source/core/api/KeySet.hxx +++ b/dbaccess/source/core/api/KeySet.hxx @@ -32,6 +32,8 @@ namespace dbaccess { + class OPrivateRow; + struct SelectColumnDescription { OUString sRealName; // may be empty @@ -72,7 +74,7 @@ namespace dbaccess { ORowSetRow m_aRowSetRow; sal_Int32 m_nUpdateInsert; - css::uno::Reference< css::sdbc::XRow> m_xRow; + rtl::Reference<OPrivateRow> m_xRow; }; typedef std::map<sal_Int32,OKeySetValue > OKeySetMatrix; typedef std::map<sal_Int32, rtl::Reference<ORowSetValueVector> > OUpdatedParameter; diff --git a/dbaccess/source/core/api/OptimisticSet.cxx b/dbaccess/source/core/api/OptimisticSet.cxx index e77560d41386..a74ec45e41d7 100644 --- a/dbaccess/source/core/api/OptimisticSet.cxx +++ b/dbaccess/source/core/api/OptimisticSet.cxx @@ -36,6 +36,7 @@ #include <algorithm> #include <com/sun/star/sdbcx/XTablesSupplier.hpp> #include <composertools.hxx> +#include "PrivateRow.hxx" using namespace dbaccess; using namespace ::connectivity; @@ -105,7 +106,7 @@ void OptimisticSet::construct(const Reference< XResultSet>& _xDriverSet,const OU // the first row is empty because it's now easier for us to distinguish when we are beforefirst or first // without extra variable to be set - OKeySetValue keySetValue{nullptr,0,Reference<XRow>()}; + OKeySetValue keySetValue{nullptr,0,nullptr}; m_aKeyMap.emplace(0,keySetValue); m_aKeyIter = m_aKeyMap.begin();
