diff options
author | Lionel Elie Mamane <lionel@mamane.lu> | 2015-01-22 13:42:13 +0100 |
---|---|---|
committer | Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> | 2015-01-22 20:02:14 +0000 |
commit | 89b9eb07c8b8b8abc728f3ed1e719ddd27898006 (patch) | |
tree | 917cdd325cdd18fa52bb701cc19e34167a7ba1ae | |
parent | 93e07c7d16a052a735e9e85aba5a3a885df662e1 (diff) |
fdo#88475 RowSetBase: reposition cache before interrogating it
This partially reverts:
commit d20232a77565f46fedc0b556f4d50addff4d3559
Author: Lionel Elie Mamane <lionel@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@collabora.com>
Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
-rw-r--r-- | dbaccess/source/core/api/RowSetBase.cxx | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/dbaccess/source/core/api/RowSetBase.cxx b/dbaccess/source/core/api/RowSetBase.cxx index 57a3dc12e7b6..584bb02c2271 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); |