diff options
author | Xisco Fauli <anistenis@gmail.com> | 2015-12-01 18:59:26 +0100 |
---|---|---|
committer | Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> | 2015-12-15 17:07:05 +0000 |
commit | c4f6cd2848c60969043aa3d1804e138669a6f14a (patch) | |
tree | acd351dca2e7ec7d03ae83500ea3a4ee2668f800 /filter/source/svg/svgreader.cxx | |
parent | 289a8c4c14403322d69240962704bcda4e49e892 (diff) |
I was wrong for thinking that there was a problem when
elements inside def elements were not written.
Actually, Cristina's commit
( 5e27d23d7e665cc0aeac8fc9ea2236bf8bc088ff ) was correct
as elements inside defs don't have to be written at least
they're refered by <use> element, which isn't supported in Libo
right now. Working on implementing support for use element
Change-Id: Id0b8d8e9b27887f75cc961881daeb82089b2e62b
Reviewed-on: https://gerrit.libreoffice.org/20333
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
(cherry picked from commit f268e6f1fdd741ebdb5256ed9c72643846472332)
Reviewed-on: https://gerrit.libreoffice.org/20484
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Diffstat (limited to 'filter/source/svg/svgreader.cxx')
-rw-r--r-- | filter/source/svg/svgreader.cxx | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/filter/source/svg/svgreader.cxx b/filter/source/svg/svgreader.cxx index 0554099325eb..74d4ee35a580 100644 --- a/filter/source/svg/svgreader.cxx +++ b/filter/source/svg/svgreader.cxx @@ -88,22 +88,20 @@ template<typename Func> void visitElements(Func& rFunc, // notify children processing rFunc.push(); + if (eCaller == SHAPE_WRITER && rElem->getTagName() == "defs") + return; + // recurse over children uno::Reference<xml::dom::XNodeList> xChildren( rElem->getChildNodes() ); const sal_Int32 nNumNodes( xChildren->getLength() ); for( sal_Int32 i=0; i<nNumNodes; ++i ) { if( xChildren->item(i)->getNodeType() == xml::dom::NodeType_ELEMENT_NODE ){ - //tdf#65864 - //TODO: support clipPath - if( !(eCaller == SHAPE_WRITER && - rElem->getTagName() == "clipPath")){ - visitElements( rFunc, - uno::Reference<xml::dom::XElement>( - xChildren->item(i), - uno::UNO_QUERY_THROW), - eCaller ); - } + visitElements( rFunc, + uno::Reference<xml::dom::XElement>( + xChildren->item(i), + uno::UNO_QUERY_THROW), + eCaller ); } } |