diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-09-16 11:03:04 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-09-17 10:49:21 +0200 |
commit | dac29c278531d5474289eb54aa03987c4958ac83 (patch) | |
tree | 25b32b704b15e1aa89fbd1f6a83d5f25db9169d6 /svl | |
parent | fbad565fcb5ee8d20a1a83838e66b43aeb23bfa4 (diff) |
speedup toUpperCase when called in parallel
by removing locking from CharClass, which means we need to make it an
immutable class
Since SharedStringPool in sc/ stores a pointer to the CharClass in
use, we have to tweak SvtSysLocale so that the object does not change
location.
Change-Id: I2c62d354fa542ebc04e755ce5b9b9e2ddff76a64
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122185
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'svl')
-rw-r--r-- | svl/source/numbers/zforlist.cxx | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/svl/source/numbers/zforlist.cxx b/svl/source/numbers/zforlist.cxx index 6ef3dddcd016..077d04867e0f 100644 --- a/svl/source/numbers/zforlist.cxx +++ b/svl/source/numbers/zforlist.cxx @@ -338,7 +338,7 @@ void SvNumberFormatter::ChangeIntl(LanguageType eLnge) ActLnge = eLnge; maLanguageTag.reset( eLnge ); - pCharClass->setLanguageTag( maLanguageTag ); + pCharClass.reset( new CharClass( m_xContext, maLanguageTag ) ); xLocaleData.changeLocale( maLanguageTag ); xCalendar.changeLocale( maLanguageTag.getLocale() ); xTransliteration.changeLocale( eLnge ); |