summaryrefslogtreecommitdiff
path: root/unotools
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2019-04-18 15:13:19 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2019-04-19 13:19:31 +0200
commit1a5b12aa5da2c718848d3cc5d9bce7bfcdeacf54 (patch)
tree25044edc2afb99073ba6bef8d181dadbb6a53467 /unotools
parenteaaaad0e21edb27edaa865eee03696f007cd8010 (diff)
optimise find/insert pattern
if we're doing a find/insert on a set or a map, it is better to just do a conditional insert/emplace operation than triggering two lookups. Change-Id: I80da5097f5a89fe30fa348ce5b6e747c34287a8d Reviewed-on: https://gerrit.libreoffice.org/70937 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'unotools')
-rw-r--r--unotools/source/config/fontcfg.cxx8
1 files changed, 3 insertions, 5 deletions
diff --git a/unotools/source/config/fontcfg.cxx b/unotools/source/config/fontcfg.cxx
index 114e2dc37352..ecb47f59dae8 100644
--- a/unotools/source/config/fontcfg.cxx
+++ b/unotools/source/config/fontcfg.cxx
@@ -863,11 +863,9 @@ void FontSubstConfiguration::fillSubstVector( const css::uno::Reference< XNameAc
OUString aSubst( pLine->getToken( 0, ';', nIndex ) );
if( !aSubst.isEmpty() )
{
- UniqueSubstHash::iterator aEntry = maSubstHash.find( aSubst );
- if (aEntry != maSubstHash.end())
- aSubst = *aEntry;
- else
- maSubstHash.insert( aSubst );
+ auto itPair = maSubstHash.insert( aSubst );
+ if (!itPair.second)
+ aSubst = *itPair.first;
rSubstVector.push_back( aSubst );
}
}