summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-11-14 12:41:56 +0000
committerCaolán McNamara <caolanm@redhat.com>2017-11-14 21:14:06 +0100
commit10bcb72a98595eeed26848f541ef51071d3c27f5 (patch)
tree4b4592b5d8ed25727f8682816d02886cfe971084
parent425c64fa274ab62ad2f2b0f2ea4f922d35aa747d (diff)
ofz: if parsing failed we keep reparsing it
Change-Id: I656eb1144a652addbc4a0b07b5d5dd435b68bf2c Reviewed-on: https://gerrit.libreoffice.org/44714 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--include/vcl/vectorgraphicdata.hxx1
-rw-r--r--vcl/source/gdi/vectorgraphicdata.cxx5
2 files changed, 5 insertions, 1 deletions
diff --git a/include/vcl/vectorgraphicdata.hxx b/include/vcl/vectorgraphicdata.hxx
index a045b01ee46e..66541616b41c 100644
--- a/include/vcl/vectorgraphicdata.hxx
+++ b/include/vcl/vectorgraphicdata.hxx
@@ -57,6 +57,7 @@ private:
OUString maPath;
// on demand created content
+ bool mbSequenceCreated;
basegfx::B2DRange maRange;
std::deque< css::uno::Reference< css::graphic::XPrimitive2D > > maSequence;
BitmapEx maReplacement;
diff --git a/vcl/source/gdi/vectorgraphicdata.cxx b/vcl/source/gdi/vectorgraphicdata.cxx
index 48d6ecf65286..e59d87495e5d 100644
--- a/vcl/source/gdi/vectorgraphicdata.cxx
+++ b/vcl/source/gdi/vectorgraphicdata.cxx
@@ -147,7 +147,7 @@ void VectorGraphicData::ensureReplacement()
void VectorGraphicData::ensureSequenceAndRange()
{
- if(maSequence.empty() && maVectorGraphicDataArray.hasElements())
+ if (!mbSequenceCreated && maVectorGraphicDataArray.hasElements())
{
// import SVG to maSequence, also set maRange
maRange.reset();
@@ -206,6 +206,7 @@ void VectorGraphicData::ensureSequenceAndRange()
}
}
mNestedBitmapSize = estimateSize(maSequence);
+ mbSequenceCreated = true;
}
}
@@ -227,6 +228,7 @@ VectorGraphicData::VectorGraphicData(
VectorGraphicDataType eVectorDataType)
: maVectorGraphicDataArray(rVectorGraphicDataArray),
maPath(rPath),
+ mbSequenceCreated(false),
maRange(),
maSequence(),
maReplacement(),
@@ -241,6 +243,7 @@ VectorGraphicData::VectorGraphicData(
VectorGraphicDataType eVectorDataType)
: maVectorGraphicDataArray(),
maPath(rPath),
+ mbSequenceCreated(false),
maRange(),
maSequence(),
maReplacement(),