summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2014-11-05 15:25:18 +0100
committerMiklos Vajna <vmiklos@collabora.co.uk>2014-11-05 17:44:37 +0100
commit3943daaa353ca3cd4ae1873249c94ed2856dd99a (patch)
treed0bec85baba4a4a67df91a70080c291a1ccf8c00 /include
parent74fe2377784397169bec7dad9816b79ee80dfe32 (diff)
rtl::OUString::fromUtf8(): use rtl_convertStringToUString()
So that we can assert if the input wasn't valid UTF-8. Change-Id: I626a5874b37553b2fe76acfea2ce7d9d9fd38725
Diffstat (limited to 'include')
-rw-r--r--include/rtl/ustring.hxx21
1 files changed, 11 insertions, 10 deletions
diff --git a/include/rtl/ustring.hxx b/include/rtl/ustring.hxx
index 45508695a4b4..9ffe5a1901e6 100644
--- a/include/rtl/ustring.hxx
+++ b/include/rtl/ustring.hxx
@@ -2078,20 +2078,21 @@ public:
* Convert an OString to an OUString, assuming that the OString is
* UTF-8-encoded.
*
- * @param rStr
+ * @param rSource
* an OString to convert
*
- * @param convertFlags
- * flags which control the conversion.
- *
- * @see rtl::OStringToOUString for more info on convertFlags.
- *
* @since LibreOffice 4.4
*/
- static inline OUString fromUtf8(const OString& rStr,
- sal_uInt32 convertFlags = OSTRING_TO_OUSTRING_CVTFLAGS)
- {
- return OUString(rStr.getStr(), rStr.getLength(), RTL_TEXTENCODING_UTF8, convertFlags);
+ static inline OUString fromUtf8(const OString& rSource)
+ {
+ OUString aTarget;
+ bool bSuccess = rtl_convertStringToUString(&aTarget.pData,
+ rSource.getStr(),
+ rSource.getLength(),
+ RTL_TEXTENCODING_UTF8,
+ RTL_TEXTTOUNICODE_FLAGS_UNDEFINED_ERROR|RTL_TEXTTOUNICODE_FLAGS_MBUNDEFINED_ERROR|RTL_TEXTTOUNICODE_FLAGS_INVALID_ERROR);
+ assert(bSuccess);
+ return aTarget;
}
/**