Age | Commit message (Collapse) | Author |
|
These are pulled in by either our own bundled extension
dictionaries (es-*, ca-*), or hunspell dictionary (en-AG), but
have no language listbox entry (and don't need one until someone
insists) thus are generated.
So if selected and in case stored in binary MS file formats ensure
a stable back-and-forth conversion. The on-the-fly 0x7e1, 0x7e2,
... are generated arbitrarily in order as encountered.
Change-Id: I0dc72bf1301b26d5b82e1b271c58fc77c82eea0f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145161
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
(cherry picked from commit 54d25b36c0bf3dcc715f2098ad658bb113e868ec)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145124
|
|
First, the LANGUAGE_SPANISH_LATIN_AMERICA 0xE40A is not a MS
system LCID, it is Spanish 0x00a with sublanguage 0x39 => user
defined (in the range 0x20 to 0x3f). Meanwhile MS reserved 0x580A
for {es-419}, so obsolete the legacy 0xE40A definition and replace
with 0x580A when encountered.
Second, due to the legacy plain {es} mapping being present, an
encountered 'es' (from our bundled dictionary extension) got
mapped to 0xE40A instead of 0xA and thus was added to the
character language listbox (that otherwise suppresses LCIDs
without sublanguage), resulting in a "Spanish {es}" entry.
Besides, it's currently not clear how to actually proceed with
such dictionary situation when, for example, both 'es-ES' and 'es'
dictionaries are present and the 'es' dictionary apparently is
meant as base and contains entries the 'es-ES' does not or 'es-ES'
overrides entries. It might be it's handled half-way in
linguistics, but maybe not even that, I didn't investigate.
Change-Id: Id859731ba5efa65d4a6de429b7f52027aa69327c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145093
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
(cherry picked from commit 375630ae76f46c096421dfadee8d37b406bc10c5)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145114
|
|
Basically copies pt_PT.xml but replaces translated with
untranslated keywords (AA,AAAA => YY,YYYY), hence no ref="pt_PT"
for LC_FORMAT (and LC_CTYPE).
Also use sort-formats.awk -v group=1 to sort FormatElement by usage
group and formatIndex as those went quite wild over time..
Change-Id: Iececac0ebdd0317fd14ab65f32c08501f3ce32c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143398
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
And use an overloaded helper function with a better (?) unified name
to show that the result is not an O(U)String.
Change-Id: I8956338b05d02bf46a6185828130ea8ef145d46b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141203
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: If6c9af6d4a6c7faee6231189014401314d1b1f25
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141124
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Eike Rathke <erack@redhat.com>
|
|
Change-Id: I859bb1d100eed0d1940e31575611f34c1c308698
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140982
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
A tag with script could be added for which we don't have locale
data but for the same language in another script. Do not fall back
to that.
With that the share/autocorr/acor_zh-{CN,TW}.dat files created
additional Asian language listbox entries
"Chinese (Simplified, China) {zh-Hans-CN}"
"Chinese (Traditional, Taiwan) {zh-Hant-TW}"
because those are the canonicalized language tags.
Prefer the known legacy zh-CN and zh-TW tags instead.
Could also had happened with any document import.
Which again revealed a flaw in the handling of mapping overrides
where converting from a LanguageType LCID to Locale could yield a
different mapping than from BCP47 to LCID, which in the case of
a fallback for locale data lead to odd side effects.
Change-Id: I1e2aaa8e9f99b6b3bc2c9a661215cb00bddd33d6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140939
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
... for artificial constructed languages.
Change-Id: Ifd0f2ca63738eb9bbe78361cd3fdf507f3e397f5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139135
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
... to prepare for more finegrained private-use control.
Change-Id: I118c3f5ee6e437435c07ed2cf699c4597e9cdf88
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139112
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Revert to long as originally used in commit e81359a9a324:
"added registerImpl() re-entered warning" and then apparently
accidentally broken in the mass conversion commit
e25fd7782ad04: "long->tools::Long in hwpfilter..oox".
Change-Id: I39c983ddec83c84953bc3db167793944c671894b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135714
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I849e8e2c6cf2a61b81b25c96b79478bc04907b5c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135458
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Change-Id: I7f9290383eabcf3733f15f8f45193ee04db9852f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134953
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
Change-Id: I92e3d60180c31d765994a2212e1c4547c09c93d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133517
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
for which we have o3tl:: equivalents
Change-Id: I4670fd8b703ac47214be213f41e88d1c6ede7032
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132913
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I86592be0717c062a918108bf4437074b0f70b372
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132029
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Icc4ed353c1bad53c2e2bf85fc098a50d66ee5b33
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128988
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Change-Id: Ib132f2582fce1fb62755926d3f55987ea474ec74
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128297
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Add test for languages without hyphenation. The fix can be tested with:
make CPPUNIT_TEST_NAME="testLanguagesWithoutHyphenation" -sr \
CppunitTest_i18nlangtag_test_languagetag
It is important to know that Kurdish language consists of different
dialects with differences in hyphenation:
1. Central Kurdish (Sorani): Arabic script, no hyphenation
2. Northern Kurdish (Kurmanji): Latin script, uses hyphenation
3. Southern Kurdish (Xwarîn): Arabic script, no hyphenation
Change-Id: I541281af6de296e57a5ab2dc8254f511787ebda0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128188
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
Pashto language, which is spoken in Afghanistan and Pakistan uses the
Arabic script, and does not use hyphenation.
Change-Id: I87a1235b183055b0961ab27f45281be7aa9965c3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128191
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
The Vietnamese language does not use hyphenation, so LO should not
warn for lack of hyphenation data. This was described in the commit
message of 151c56ed547490a99d912524c0e56b5d6d4a1939, but the actual
code for fixing the problem for Vietnamese langauge was missing.
This patch, adds the Vietnamese language to the list of languages
that do not use hyphenation, so the warning for the lack of
hyphenation data will no longer be displayed for this language.
As described in the above commit:
"In Vietnamese all words consist of single syllables, so they are
often very short; hyphenation is not allowed at all."
https://tug.org/TUGboat/tb29-1/tb91thanh-vntex.pdf
Hyphenation is declined in Vietnamese orthography since 1975
https://www.quora.com/When-did-hyphenation-decline-in-Vietnamese-orthography
Change-Id: Id8d3681ad0a93065e61e9da2422af64793fbc111
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128177
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
Upon opening a Writer document containing some languages that do not
use hyphen, an alert is created with the text:
'Missing hyphenation data Please install the hyphenation package for
locale "ab_CD".'
in which 'ab_CD' is the locale.
This patch removes the warning for these languages, that do not use
hyphenation:
* Arabic script languages (except Uighur)
+ Persian (Farsi)
+ Kashmiri
+ Kurdish (Central Kurdish and Southern Kurdish with Arabic script)
+ Punjabi
+ Sindhi
+ Malai
+ Somali
+ Swahili
+ Urdu
"Words are not hyphenated in Arabic language text, however hyphenation
is possible for Uighur text written in the Arabic script"
https://www.w3.org/International/i18n-tests/results/word-break-shaping
The list from MS documents is lenghty, but some of the languages are
were not available in LibreOffice, so they are ommited:
https://docs.microsoft.com/en-us/typography/script-development/arabic
There were languages like Hausa and Kanuri from Nigeria that use both
Latin and Arabic script, but only Latin script was listed in the
LibreOffice languages, so they were also ommited.
* CJK languages
+ Japanese
+ Korean
+ Chinese
+ Yue Chinese
"CJK languages differ from European languages in that there are no
hyphenation rules"
https://tug.org/TUGboat/tb25-0/cho.pdf
* Vietnamese
"In Vietnamese all words consist of single syllables, so they are
often very short; hyphenation is not allowed at all."
https://tug.org/TUGboat/tb29-1/tb91thanh-vntex.pdf
Hyphenation is declined in Vietnamese orthography since 1975
https://www.quora.com/When-did-hyphenation-decline-in-Vietnamese-orthography
The fix for Japanese (tdf#143422) was previously done in:
53d5555f13371252874ec962dee4643168d26780 and the functionality is
preserverd with the current patch.
An alternate approach would be adding all the unicode scripts,
specifying the script for each langauge, and decide upon the script
(mostly) and not (only) the language.
More information about the hyphenation usage of many scripts can be
found in:
https://r12a.github.io/scripts/
This is the list of Unicode scripts:
https://unicode.org/standard/supported.html
https://en.wikipedia.org/wiki/Script_(Unicode)#List_of_scripts_in_Unicode
Change-Id: I7d2b4ee55a0893d1f0d1f9cd3b7cc037a49589b6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126435
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
... where for each or'ed expression the same nLang was masked again.
Change-Id: I61d572be6f72c70d24dc56e67b950af2d2b5f767
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127642
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Change-Id: I74c1ea8b9b490eaa9508a885758224063e39051b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127235
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I4d19251fe350d8d2139ede9adbe0de1e3b570a5f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127028
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Interslavic Latin {art-x-interslv} 0x06AD
Interslavic Cyrillic {art-Cyrl-x-interslv} 0x06AE
Change-Id: I487d6593db89af038555a192674298e2dabf5582
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127018
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
An empty tag might be the result of a bad LANGUAGE=":" setting.
The old implementation tried an unconditional "-" tag (for both
language and country empty) that was wrong anyway. Do not keep the
resulting LANGUAGE_SYSTEM as that is exactly what we want to know
the actual locale for.
Change-Id: I7d6587f59e9a3362c7d877926a325ebcfe7b48db
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126863
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Try to extract a first or second if first is empty.
Ideally the sequence would be matched against available UI
localizations, but that's simply not available at this stage.
Change-Id: I37d0c289fe165c76a98086c63279aacf6856900c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126862
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Change-Id: Ibc4758235ad15858d288e6f3015e2dfcb1650a26
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126042
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ib712072deec9368a3a580562dd1fc3bc28e86e68
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125679
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
Change-Id: I75e2d0b78ebf4390ed67d94eb1021145f245fe50
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125631
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...after b5758cb2729236d9eaf52bd25b1b113a3ff06b4e "rtl::Static to thread-safe
static" (which this partially reverts again), like
71d0c43fb4cf535239cb41baf7b6e03de765ce7a "initialization-order-fiasco" in the
past
Change-Id: Ie3f352a63ee3939b1727faf6cf11b2768173437c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124998
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ie4c26b0b2c0880bcf6ec6d786b219f142d715af5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124930
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I67a79dab3fac36b494ebc66b81d6d571e2486b1a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124842
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
e.g. see gd and cy
Change-Id: Ic2f9746dc1fc2b08f000f8efff113f5981e427f6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124839
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
... with keeping LANGUAGE_SYSTEM not resolved or falling back.
Change-Id: I10211c2b2140a9822f1403dc00af3ee9ded08f69
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124140
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
With on-the-fly LanguageTag the fuzzy fallbacks for a few
languages aren't needed anymore. Proper fallbacks should be
obtained when needed, like when configuring default locales, or
configured values used after.
Change-Id: I8b85b8099e085508435036ac846db6c3e516dc23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124127
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Most likely was an oversight when using LANGUAGE_ENGLISH as other
LANGUAGE_FRENCH and LANGUAGE_GERMAN are locales already.
Change-Id: Ie16395340cef9939a5397e3d10d6df6b13ac8d99
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124124
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Change-Id: I0c1d89a8869e3788f18851ae004bac24275923b5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123829
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
To be used instead of getSystemLanguage() in a subsequent change.
For details see commit summary of
commit aec5312ffab24236876693d7a8b55843847f2a48
CommitDate: Mon Oct 18 21:14:24 2021 +0200
Related: tdf#145173 Ensure known supported system and default document locale
Change-Id: I5bed125e47c2a03fe2e7a4f84988b2e8841143c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123766
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
...compared to a full-blown O[U]String, for temporary objects holding an
O[U]StringConcat result that can then be used as a std::[u16]string_view.
It's instructive to see how some invocations of operator ==, operator !=, and
O[U]StringBuffer::insert with an O[U]StringConcat argument required implicit
materialization of an O[U]String temporary, and how that expensive operation has
now been made explicit with the explicit O[U]StringConcatenation ctor.
(The additional operator == and operator != overloads are necessary because the
overloads taking two std::[u16]string_view parameters wouldn't even be found
here with ADL. And the OUString-related ones would cause ambiguities in at
least sal/qa/rtl/strings/test_oustring_stringliterals.cxx built with
RTL_STRING_UNITTEST, so have simply been disabled for that special test-code
case.)
Change-Id: Id29799fa8da21a09ff9794cbc7cc9b366e6803b8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122890
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I5fb56e039c854471ae444395feee27e820902181
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121297
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Change-Id: Icf7452b2aef3ecae8ccdbcd4a66ab8b121a8120c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120814
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Change-Id: Ibe95fba21ed94be7fb4848f19161d492bc403e4d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120798
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
To be used in generating display names for on-the-fly language
tags in the language listbox.
Change-Id: Ibb36fe312e550f77f1e2d3acc2dbff9e83c15f7b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120797
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
See
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/70feba9f-294e-491e-b6eb-56532684c37f
https://winprotocoldoc.blob.core.windows.net/productionwindowsarchives/MS-LCID/%5bMS-LCID%5d-210625.pdf
and
commit 402dab839b2e451dec81bfb83dadbe0d5a231db2
CommitDate: Wed Aug 4 21:21:51 2021 +0200
update list of [MS-LCID] from 6/25/2021 15.0 rev.
Change-Id: I44db2bfaf894ead119c7014e3770fc44be537148
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120128
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
update list of [MS-LCID] from 6/25/2021 15.0 revision
see [MS-LCID]: Windows Language Code Identifier (LCID) Reference
Link: https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/70feba9f-294e-491e-b6eb-56532684c37f
Change-Id: I8264a246d3a0f34a19f35684bdb987565f37e69d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119772
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
...after a943936eeff04b60ebd0b2552bc18b42606f3321 "rtl::Static -> static local"
(and the relevant static isn't even local), when building e.g.
Gallery/backgrounds, see <https://ci.libreoffice.org/job/lo_ubsan/2090/>:
> ==26993==ERROR: AddressSanitizer: initialization-order-fiasco on address 0x2b52e50be408 at pc 0x2b52e4d32753 bp 0x7fff5670f090 sp 0x7fff5670f088
> READ of size 8 at 0x2b52e50be408 thread T0
> #0 0x2b52e4d32752 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::shared_ptr<LanguageTagImpl> >, std::_Select1st<std::pair<rtl::OUString const, std::shared_ptr<LanguageTagImpl> > >, (anonymous namespace)::compareIgnoreAsciiCaseLess, std::allocator<std::pair<rtl::OUString const, std::shared_ptr<LanguageTagImpl> > > >::_M_begin() /home/tdf/lode/opt_private/gcc-7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../include/c++/7.3.0/bits/stl_tree.h:737:64
> #1 0x2b52e4d355f3 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::shared_ptr<LanguageTagImpl> >, std::_Select1st<std::pair<rtl::OUString const, std::shared_ptr<LanguageTagImpl> > >, (anonymous namespace)::compareIgnoreAsciiCaseLess, std::allocator<std::pair<rtl::OUString const, std::shared_ptr<LanguageTagImpl> > > >::find(rtl::OUString const&) /home/tdf/lode/opt_private/gcc-7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../include/c++/7.3.0/bits/stl_tree.h:2523:37
> #2 0x2b52e4d3507d in std::__cxx1998::map<rtl::OUString, std::shared_ptr<LanguageTagImpl>, (anonymous namespace)::compareIgnoreAsciiCaseLess, std::allocator<std::pair<rtl::OUString const, std::shared_ptr<LanguageTagImpl> > > >::find(rtl::OUString const&) /home/tdf/lode/opt_private/gcc-7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../include/c++/7.3.0/bits/stl_map.h:1164:21
> #3 0x2b52e4cf116c in std::__debug::map<rtl::OUString, std::shared_ptr<LanguageTagImpl>, (anonymous namespace)::compareIgnoreAsciiCaseLess, std::allocator<std::pair<rtl::OUString const, std::shared_ptr<LanguageTagImpl> > > >::find(rtl::OUString const&) /home/tdf/lode/opt_private/gcc-7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../include/c++/7.3.0/debug/map.h:561:32
> #4 0x2b52e4d00dcd in LanguageTag::registerImpl() const /i18nlangtag/source/languagetag/languagetag.cxx:888:50
> #5 0x2b52e4cdf693 in LanguageTag::getImpl() /i18nlangtag/source/languagetag/languagetag.cxx:1004:18
> #6 0x2b52e4cdf3fd in LanguageTag::LanguageTag(rtl::OUString const&, bool) /i18nlangtag/source/languagetag/languagetag.cxx:489:9
> #7 0x2b52b9aed628 in __cxx_global_var_init.2 /sfx2/source/view/lokhelper.cxx:77:13
> #8 0x2b52b9aed75e in _GLOBAL__sub_I_lokhelper.cxx /sfx2/source/view/lokhelper.cxx
> #9 0x2b52b4f069c2 in _dl_init_internal (/lib64/ld-linux-x86-64.so.2+0xf9c2)
> #10 0x2b52b4ef8179 (/lib64/ld-linux-x86-64.so.2+0x1179)
>
> 0x2b52e50be408 is located 40 bytes inside of global variable '(anonymous namespace)::theMapBcp47' defined in '/home/tdf/lode/jenkins/workspace/lo_ubsan/i18nlangtag/source/languagetag/languagetag.cxx:93:10' (0x2b52e50be3e0) of size 72
> registered at:
> #0 0x43f4c8 in __asan_register_globals.part.13 /home/tdf/lode/packages/llvm-llvmorg-9.0.1.src/compiler-rt/lib/asan/asan_globals.cc:362
> #1 0x2b52e4d4031b in asan.module_ctor (/instdir/program/libi18nlangtag.so+0x16831b)
> LLVMSymbolizer: error reading file: No such file or directory
> #2 0x7fff567143b7 ([stack]+0x203b7)
This is a partial revert of a943936eeff04b60ebd0b2552bc18b42606f3321
"rtl::Static -> static local".
Change-Id: I5d6803d217d4e8927b5864b2392f3ddd18310a5a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119882
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
in a handful cases, like a map or a vector, we don't need init on demand
at all, the default constructor can be laid out at compile time
Change-Id: Ifa3188af7a65cd475ce0f603d15a8c26bcda7e6d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119710
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
'x-none' is a private-use tag and letting it escape into the wild
isn't such a private use..
This just prevents the lt_string_value assertion that doesn't harm
anyway but seems to confuse people and makes the tag known to
LibreOffice with a reproducible assigned LCID instead of an
on-the-fly generated one.
Whatever it may take to actually support something tagged with
'x-none'.
Change-Id: I3f32c9ba18a2528584a112157509c1dfda75e29c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118788
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
...by assuming that all const member functions are side-effect free. (This
presumably means that some of the special cases in
StringAdd::isSideEffectFree are obsoleted by this more general case, but any
such removal is postponed to later clean-up.)
(Came across this when idly wondering why
8b7f948d9d79393bc6c1b11d239706666fd5d7de "sc, VmlFormControlExporter: avoid
OStringBuffer style" had not been found by the plugin before.)
Change-Id: I6bca10df53885b14a590543aabd61f23b3748572
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118675
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|