[Libreoffice-commits] core.git: Branch 'libreoffice-4-4-0' - dbaccess/source

Lionel Elie Mamane lionel at mamane.lu
Thu Jan 22 12:02:57 PST 2015


 dbaccess/source/core/api/RowSetBase.cxx |    2 ++
 1 file changed, 2 insertions(+)

New commits:
commit 89b9eb07c8b8b8abc728f3ed1e719ddd27898006
Author: Lionel Elie Mamane <lionel at mamane.lu>
Date:   Thu Jan 22 13:42:13 2015 +0100

    fdo#88475 RowSetBase: reposition cache before interrogating it
    
    This partially reverts:
    
      commit d20232a77565f46fedc0b556f4d50addff4d3559
      Author: Lionel Elie Mamane <lionel at mamane.lu>
      Date:   Thu Dec 6 13:22:06 2012 +0100
    
          Don't force refresh when higher up code did not request it
    
          Change-Id: I0f415c96fc05c1d776d14885751aef020c42f4ae
    
    which did not take into account that the cache is shared with the
    clones.
    
    This is not a cherry-pick from master, but a more conservative
    version of commit d7c9a1d9d65fe8b1a56c5c280d2ca6640a549d2f.
    
    Change-Id: I1fa5c3169806760d35dd07e1fc1b8d5522dd3641
    Reviewed-on: https://gerrit.libreoffice.org/14103
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
    Tested-by: Christian Lohmaier <lohmaier+LibreOffice at googlemail.com>
    Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice at googlemail.com>

diff --git a/dbaccess/source/core/api/RowSetBase.cxx b/dbaccess/source/core/api/RowSetBase.cxx
index 57a3dc1..584bb02 100644
--- a/dbaccess/source/core/api/RowSetBase.cxx
+++ b/dbaccess/source/core/api/RowSetBase.cxx
@@ -657,6 +657,7 @@ sal_Bool SAL_CALL ORowSetBase::isFirst(  ) throw(SQLException, RuntimeException,
     if ( impl_rowDeleted() )
         return ( m_nDeletedPosition == 1 );
 
+    positionCache( MOVE_NONE_REFRESH_ONLY );
     bool bIsFirst = m_pCache->isFirst();
 
     SAL_INFO("dbaccess", "ORowSetBase::isFirst() = " << bIsFirst << " Clone = " << m_bClone);
@@ -686,6 +687,7 @@ sal_Bool SAL_CALL ORowSetBase::isLast(  ) throw(SQLException, RuntimeException,
             return ( m_nDeletedPosition == impl_getRowCount() );
     }
 
+    positionCache( MOVE_NONE_REFRESH_ONLY );
     bool bIsLast = m_pCache->isLast();
 
     SAL_INFO("dbaccess", "ORowSetBase::isLast() = " << bIsLast << " Clone = " << m_bClone);


More information about the Libreoffice-commits mailing list