summaryrefslogtreecommitdiffstats
path: root/writerperfect/source/filter/OdgGenerator.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'writerperfect/source/filter/OdgGenerator.cxx')
-rw-r--r--writerperfect/source/filter/OdgGenerator.cxx14
1 files changed, 6 insertions, 8 deletions
diff --git a/writerperfect/source/filter/OdgGenerator.cxx b/writerperfect/source/filter/OdgGenerator.cxx
index 6b08af872a8c..f4d68dce7913 100644
--- a/writerperfect/source/filter/OdgGenerator.cxx
+++ b/writerperfect/source/filter/OdgGenerator.cxx
@@ -1033,7 +1033,6 @@ void OdgGeneratorPrivate::_writeGraphicsStyle()
if(mxStyle["draw:fill"] && mxStyle["draw:fill"]->getStr() == "gradient")
{
- bUseOpacityGradient = true;
TagOpenElement *pDrawGradientElement = new TagOpenElement("draw:gradient");
TagOpenElement *pDrawOpacityElement = new TagOpenElement("draw:opacity");
if (mxStyle["draw:style"])
@@ -1127,14 +1126,10 @@ void OdgGeneratorPrivate::_writeGraphicsStyle()
// Work around a mess in LibreOffice where both opacities of 100% are interpreted as complete transparency
// Nevertheless, when one is different, immediately, they are interpreted correctly
- if (!(mxStyle["libwpg:start-opacity"] && mxStyle["libwpg:end-opacity"])
- || (mxStyle["libwpg:start-opacity"]->getDouble() == 1.0 && mxStyle["libwpg:end-opacity"]->getDouble() == 1.0))
- {
- delete pDrawOpacityElement;
- bUseOpacityGradient = false;
- }
- else
+ if (mxStyle["libwpg:start-opacity"] && mxStyle["libwpg:end-opacity"]
+ && (mxStyle["libwpg:start-opacity"]->getDouble() != 1.0 || mxStyle["libwpg:end-opacity"]->getDouble() != 1.0))
{
+ bUseOpacityGradient = true;
mGraphicsGradientStyles.push_back(pDrawOpacityElement);
mGraphicsGradientStyles.push_back(new TagCloseElement("draw:opacity"));
}
@@ -1162,6 +1157,9 @@ void OdgGeneratorPrivate::_writeGraphicsStyle()
mGraphicsGradientStyles.push_back(pDrawGradientElement);
mGraphicsGradientStyles.push_back(new TagCloseElement("draw:gradient"));
}
+
+ if(!bUseOpacityGradient)
+ delete pDrawOpacityElement;
}
TagOpenElement *pStyleStyleElement = new TagOpenElement("style:style");