diff options
Diffstat (limited to 'svgio/source/svgreader/svgstyleattributes.cxx')
-rw-r--r-- | svgio/source/svgreader/svgstyleattributes.cxx | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/svgio/source/svgreader/svgstyleattributes.cxx b/svgio/source/svgreader/svgstyleattributes.cxx index 1051e46f4423..cc9d40cfb16e 100644 --- a/svgio/source/svgreader/svgstyleattributes.cxx +++ b/svgio/source/svgreader/svgstyleattributes.cxx @@ -205,9 +205,10 @@ namespace svgio { const SvgStyleAttributes* pParentStyle = getCssStyleParent(); - // no parent style set, check parent for its style attributes - if(pParentStyle == NULL && mrOwner.getParent() != NULL) - pParentStyle = mrOwner.getParent()->getSvgStyleAttributes(); + if(mrOwner.supportsParentStyle() && mrOwner.getParent()) + { + return mrOwner.getParent()->getSvgStyleAttributes(); + } if (pParentStyle != this) // to prevent infinite loop return pParentStyle; @@ -1808,6 +1809,21 @@ namespace svgio } } + // #i125258# ask if fill is a direct hard attribute (no hierarchy) + bool SvgStyleAttributes::isFillSet() const + { + if(mbIsClipPathContent) + { + return false; + } + else if(maFill.isSet()) + { + return true; + } + + return false; + } + const basegfx::BColor* SvgStyleAttributes::getFill() const { if(mbIsClipPathContent) |