summaryrefslogtreecommitdiff
path: root/basic/source/sbx/sbxarray.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'basic/source/sbx/sbxarray.cxx')
-rw-r--r--basic/source/sbx/sbxarray.cxx16
1 files changed, 8 insertions, 8 deletions
diff --git a/basic/source/sbx/sbxarray.cxx b/basic/source/sbx/sbxarray.cxx
index 8d3c5515cc8a..ace9c6c139f8 100644
--- a/basic/source/sbx/sbxarray.cxx
+++ b/basic/source/sbx/sbxarray.cxx
@@ -646,16 +646,15 @@ sal_uInt32 SbxDimArray::Offset32( const sal_Int32* pIdx )
sal_uInt16 SbxDimArray::Offset( const short* pIdx )
{
long nPos = 0;
- for( std::vector<SbxDim>::const_iterator it = m_vDimensions.begin();
- it != m_vDimensions.end(); ++it )
+ for (auto const& vDimension : m_vDimensions)
{
short nIdx = *pIdx++;
- if( nIdx < it->nLbound || nIdx > it->nUbound )
+ if( nIdx < vDimension.nLbound || nIdx > vDimension.nUbound )
{
nPos = SBX_MAXINDEX + 1;
break;
}
- nPos = nPos * it->nSize + nIdx - it->nLbound;
+ nPos = nPos * vDimension.nSize + nIdx - vDimension.nLbound;
}
if( m_vDimensions.empty() || nPos > SBX_MAXINDEX )
{
@@ -699,16 +698,17 @@ sal_uInt32 SbxDimArray::Offset32( SbxArray* pPar )
#endif
sal_uInt32 nPos = 0;
sal_uInt16 nOff = 1; // Non element 0!
- for( std::vector<SbxDim>::const_iterator it = m_vDimensions.begin();
- it != m_vDimensions.end() && !IsError(); ++it )
+ for (auto const& vDimension : m_vDimensions)
{
sal_Int32 nIdx = pPar->Get( nOff++ )->GetLong();
- if( nIdx < it->nLbound || nIdx > it->nUbound )
+ if( nIdx < vDimension.nLbound || nIdx > vDimension.nUbound )
{
nPos = sal_uInt32(SBX_MAXINDEX32)+1;
break;
}
- nPos = nPos * it->nSize + nIdx - it->nLbound;
+ nPos = nPos * vDimension.nSize + nIdx - vDimension.nLbound;
+ if (IsError())
+ break;
}
if( nPos > sal_uInt32(SBX_MAXINDEX32) )
{