unotools/source/i18n/resmgr.cxx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
New commits: commit 02eaea1f93b516e35d4583158f87b2222fdd2640 Author: Mike Kaganski <mike.kagan...@collabora.com> AuthorDate: Mon Dec 28 19:12:03 2020 +0300 Commit: Mike Kaganski <mike.kagan...@collabora.com> CommitDate: Fri Jan 1 17:24:32 2021 +0100 tdf#119367: use Unicode paths on Windows in unotools Change-Id: I671c42c5dfe5acc8a6dd670694c07ff04f08c3e8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108477 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kagan...@collabora.com> diff --git a/unotools/source/i18n/resmgr.cxx b/unotools/source/i18n/resmgr.cxx index a1d74ec1b7cd..ef5b83cf06bc 100644 --- a/unotools/source/i18n/resmgr.cxx +++ b/unotools/source/i18n/resmgr.cxx @@ -134,7 +134,14 @@ namespace Translate rtl::Bootstrap::expandMacros(uri); OUString path; osl::File::getSystemPathFromFileURL(uri, path); - OString sPath(OUStringToOString(path, osl_getThreadTextEncoding())); +#if defined _WIN32 + // add_messages_path is documented to treat path string in the *created* locale's encoding + // on Windows; creating an UTF-8 encoding, we're lucky to have Unicode path support here. + constexpr rtl_TextEncoding eEncoding = RTL_TEXTENCODING_UTF8; +#else + const rtl_TextEncoding eEncoding = osl_getThreadTextEncoding(); +#endif + OString sPath(OUStringToOString(path, eEncoding)); #endif gen.add_messages_path(sPath.getStr()); #if defined UNX && !defined MACOSX && !defined IOS && !defined ANDROID _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits