summaryrefslogtreecommitdiffstats
path: root/i18npool
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2019-02-19 22:37:55 +0100
committerEike Rathke <erack@redhat.com>2019-02-20 16:24:26 +0100
commita10df00bd4a2ae293b077701d32c720a63080ebf (patch)
tree4a2aca211ec104a8dc2e6c508dc86ca199b8e69b /i18npool
parentFix compilation error against boost 1.66 at least (diff)
downloadcore-a10df00bd4a2ae293b077701d32c720a63080ebf.tar.gz
core-a10df00bd4a2ae293b077701d32c720a63080ebf.zip
Resolves: tdf#123575 treat Katakana middle dots as midletter
Treat U+30FB KATAKANA MIDDLE DOT U+FF65 HALFWIDTH KATAKANA MIDDLE DOT like U+00B7 MIDDLE DOT and other U_WB_MIDLETTER. Change-Id: Iea18e7582f29edf5d8c5bad047f97ed4088edf7c Reviewed-on: https://gerrit.libreoffice.org/68032 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
Diffstat (limited to 'i18npool')
-rw-r--r--i18npool/source/characterclassification/cclass_unicode_parser.cxx8
1 files changed, 6 insertions, 2 deletions
diff --git a/i18npool/source/characterclassification/cclass_unicode_parser.cxx b/i18npool/source/characterclassification/cclass_unicode_parser.cxx
index 29d69521954e..d3f18e7bbe27 100644
--- a/i18npool/source/characterclassification/cclass_unicode_parser.cxx
+++ b/i18npool/source/characterclassification/cclass_unicode_parser.cxx
@@ -654,8 +654,12 @@ ParserFlags cclass_Unicode::getFlagsExtended(sal_uInt32 const c)
case U_OTHER_PUNCTUATION:
// fdo#61754 Lets see (if we not at the start) if this is midletter
// punctuation and allow it in a word if it is similarly to
- // U_NON_SPACING_MARK
- if (bStart || U_WB_MIDLETTER != u_getIntPropertyValue(c, UCHAR_WORD_BREAK))
+ // U_NON_SPACING_MARK, for example U+00B7 MIDDLE DOT.
+ // tdf#123575 for U+30FB KATAKANA MIDDLE DOT property is not
+ // U_WB_MIDLETTER but U_WB_KATAKANA instead, explicitly test that
+ // and U+FF65 HALFWIDTH KATAKANA MIDDLE DOT.
+ if (bStart || (U_WB_MIDLETTER != u_getIntPropertyValue(c, UCHAR_WORD_BREAK)
+ && c != 0x30FB && c != 0xFF65))
return ParserFlags::ILLEGAL;
else
{