diff options
-rw-r--r-- | filter/source/xsltfilter/XSLTFilter.cxx | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/filter/source/xsltfilter/XSLTFilter.cxx b/filter/source/xsltfilter/XSLTFilter.cxx index dd4b8551fce0..8fe3d767bd4b 100644 --- a/filter/source/xsltfilter/XSLTFilter.cxx +++ b/filter/source/xsltfilter/XSLTFilter.cxx @@ -212,11 +212,14 @@ namespace XSLT { OUString sPreparedURL(sUrl); if (sPreparedURL.startsWithIgnoreAsciiCase("vnd.sun.star.expand:", &sPreparedURL)) + { sPreparedURL = rtl::Uri::decode(sPreparedURL, rtl_UriDecodeWithCharset, RTL_TEXTENCODING_UTF8); - css::uno::Reference<XMacroExpander> + css::uno::Reference<XMacroExpander> xMacroExpander = theMacroExpander::get(m_xContext); - return xMacroExpander->expandMacros(sPreparedURL); + sPreparedURL = xMacroExpander->expandMacros(sPreparedURL); + } + return sPreparedURL; } catch (const Exception&) { |