diff options
Diffstat (limited to 'basic/source/classes')
-rw-r--r-- | basic/source/classes/sb.cxx | 5 | ||||
-rw-r--r-- | basic/source/classes/sbunoobj.cxx | 10 | ||||
-rw-r--r-- | basic/source/classes/sbxmod.cxx | 30 |
3 files changed, 14 insertions, 31 deletions
diff --git a/basic/source/classes/sb.cxx b/basic/source/classes/sb.cxx index 4d92e3348704..8cce1979c6ec 100644 --- a/basic/source/classes/sb.cxx +++ b/basic/source/classes/sb.cxx @@ -200,10 +200,9 @@ void lclRemoveDocBasicItem( StarBASIC& rDocBasic ) it->second->stopListening(); GaDocBasicItems::get().erase( it ); } - auto it_end = GaDocBasicItems::get().end(); - for( it = GaDocBasicItems::get().begin(); it != it_end; ++it ) + for( auto& rEntry : GaDocBasicItems::get() ) { - it->second->clearDependingVarsOnDelete( rDocBasic ); + rEntry.second->clearDependingVarsOnDelete( rDocBasic ); } } diff --git a/basic/source/classes/sbunoobj.cxx b/basic/source/classes/sbunoobj.cxx index e6c1a3e1c06b..666fe69673f3 100644 --- a/basic/source/classes/sbunoobj.cxx +++ b/basic/source/classes/sbunoobj.cxx @@ -4405,14 +4405,8 @@ static DisposeItemVector GaDisposeItemVector; static DisposeItemVector::iterator lcl_findItemForBasic( StarBASIC const * pBasic ) { - DisposeItemVector::iterator it; - for( it = GaDisposeItemVector.begin() ; it != GaDisposeItemVector.end() ; ++it ) - { - StarBasicDisposeItem* pItem = *it; - if( pItem->m_pBasic == pBasic ) - return it; - } - return GaDisposeItemVector.end(); + return std::find_if(GaDisposeItemVector.begin(), GaDisposeItemVector.end(), + [&pBasic](StarBasicDisposeItem* pItem) { return pItem->m_pBasic == pBasic; }); } static StarBasicDisposeItem* lcl_getOrCreateItemForBasic( StarBASIC* pBasic ) diff --git a/basic/source/classes/sbxmod.cxx b/basic/source/classes/sbxmod.cxx index 7e65e2e588a2..cdff9edfc162 100644 --- a/basic/source/classes/sbxmod.cxx +++ b/basic/source/classes/sbxmod.cxx @@ -1495,16 +1495,11 @@ bool SbModule::SetBP( sal_uInt16 nLine ) return false; if( !pBreaks ) pBreaks.reset( new SbiBreakpoints ); - size_t i; - for( i = 0; i < pBreaks->size(); i++ ) - { - sal_uInt16 b = pBreaks->operator[]( i ); - if( b == nLine ) - return true; - if( b < nLine ) - break; - } - pBreaks->insert( pBreaks->begin() + i, nLine ); + auto it = std::find_if(pBreaks->begin(), pBreaks->end(), + [&nLine](const sal_uInt16 b) { return b <= nLine; }); + if (it != pBreaks->end() && *it == nLine) + return true; + pBreaks->insert( it, nLine ); // #38568: Set during runtime as well here BasicDebugFlags::Break if( GetSbData()->pInst && GetSbData()->pInst->pRun ) @@ -1518,17 +1513,12 @@ bool SbModule::ClearBP( sal_uInt16 nLine ) bool bRes = false; if( pBreaks ) { - for( size_t i = 0; i < pBreaks->size(); i++ ) + auto it = std::find_if(pBreaks->begin(), pBreaks->end(), + [&nLine](const sal_uInt16 b) { return b <= nLine; }); + bRes = (it != pBreaks->end()) && (*it == nLine); + if (bRes) { - sal_uInt16 b = pBreaks->operator[]( i ); - if( b == nLine ) - { - pBreaks->erase( pBreaks->begin() + i ); - bRes = true; - break; - } - if( b < nLine ) - break; + pBreaks->erase(it); } if( pBreaks->empty() ) { |