diff options
-rw-r--r-- | svgio/source/svgreader/svgimagenode.cxx | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/svgio/source/svgreader/svgimagenode.cxx b/svgio/source/svgreader/svgimagenode.cxx index 9ee155b5be54..9cdb59afe9ba 100644 --- a/svgio/source/svgreader/svgimagenode.cxx +++ b/svgio/source/svgreader/svgimagenode.cxx @@ -237,7 +237,20 @@ namespace svgio if (!rPath.isEmpty()) { - const OUString aAbsUrl(rtl::Uri::convertRelToAbs(rPath, maUrl)); + OUString aAbsUrl; + try { + aAbsUrl = rtl::Uri::convertRelToAbs( + rPath, maUrl); + } catch (rtl::MalformedUriException & e) { + // Happens for the odd maUrl = + // "vnd.sun.star.Package:Pictures/..." scheme + // using path components not starting with a + // slash by mis-design: + SAL_INFO( + "svg", + "caught rtl::MalformedUriException \"" + << e.getMessage() << "\""); + } if (!aAbsUrl.isEmpty()) { |