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();
 

Reply via email to