diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2017-09-13 13:35:49 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2017-09-13 13:35:49 +0200 |
commit | 3f0fba004badec01e536ca0fe2889e7e0bb93d7a (patch) | |
tree | cdf682e89f56c29fd6a8cd650bdb8bba42eca555 /sal/rtl/uri.cxx | |
parent | Clamp minor/patchlevel when computing CLANG_VERSION (diff) | |
download | core-3f0fba004badec01e536ca0fe2889e7e0bb93d7a.tar.gz core-3f0fba004badec01e536ca0fe2889e7e0bb93d7a.zip |
New rtl::isUnicodeScalarValue, rtl::isSurrogate
There are apparently various places that want to check for a Unicode scalar
value rather than for a Unicode code point. Changed those uses of
rtl::isUnicodeCodePoint where that was obvious. (For changing
svtools/source/svrtf/svparser.cxx see 8e0fb74dc01927b60d8b868548ef8fe1d7a80ce3
"Revert 'svtools: HTML import: don't put lone surrogates in OUString'".) Other
uses of rtl::isUnicodeCodePoint might also want to use rtl::isUnicodeScalarValue
instead.
As a side effect, this change also introduces rtl::isSurrogate, which is useful
in a few places as well.
Change-Id: I9245f4f98b83877145a4d392f0ddb7c5d824a535
Diffstat (limited to 'sal/rtl/uri.cxx')
-rw-r--r-- | sal/rtl/uri.cxx | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/sal/rtl/uri.cxx b/sal/rtl/uri.cxx index 257a0a27abac..57a7102a38eb 100644 --- a/sal/rtl/uri.cxx +++ b/sal/rtl/uri.cxx @@ -133,9 +133,8 @@ sal_uInt32 readUcs4(sal_Unicode const ** pBegin, sal_Unicode const * pEnd, p += 3; nEncoded |= ((nWeight1 & 3) << 4 | nWeight2) << nShift; } - if (bUTF8 && rtl::isUnicodeCodePoint(nEncoded) - && nEncoded >= nMin && !rtl::isHighSurrogate(nEncoded) - && !rtl::isLowSurrogate(nEncoded)) + if (bUTF8 && rtl::isUnicodeScalarValue(nEncoded) + && nEncoded >= nMin) { *pBegin = p; *pType = EscapeChar; |