summaryrefslogtreecommitdiff
path: root/vcl/source/gdi/svgdata.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'vcl/source/gdi/svgdata.cxx')
-rw-r--r--vcl/source/gdi/svgdata.cxx20
1 files changed, 8 insertions, 12 deletions
diff --git a/vcl/source/gdi/svgdata.cxx b/vcl/source/gdi/svgdata.cxx
index d86fc8dbcef5..cd1614e6328c 100644
--- a/vcl/source/gdi/svgdata.cxx
+++ b/vcl/source/gdi/svgdata.cxx
@@ -99,14 +99,13 @@ void SvgData::ensureReplacement()
void SvgData::ensureSequenceAndRange()
{
- if(!maSequence.hasElements() && mnSvgDataArrayLength)
+ if(!maSequence.hasElements() && maSvgDataArray.hasElements())
{
// import SVG to maSequence, also set maRange
maRange.reset();
// create stream
- const uno::Sequence< sal_Int8 > aPostData(reinterpret_cast<sal_Int8*>(maSvgDataArray.get()), mnSvgDataArrayLength);
- const uno::Reference< io::XInputStream > myInputStream(new comphelper::SequenceInputStream(aPostData));
+ const uno::Reference< io::XInputStream > myInputStream(new comphelper::SequenceInputStream(maSvgDataArray));
if(myInputStream.is())
{
@@ -152,9 +151,8 @@ void SvgData::ensureSequenceAndRange()
}
}
-SvgData::SvgData(const SvgDataArray& rSvgDataArray, sal_uInt32 nSvgDataArrayLength, const OUString& rPath)
+SvgData::SvgData(const SvgDataArray& rSvgDataArray, const OUString& rPath)
: maSvgDataArray(rSvgDataArray),
- mnSvgDataArrayLength(nSvgDataArrayLength),
maPath(rPath),
maRange(),
maSequence(),
@@ -164,7 +162,6 @@ SvgData::SvgData(const SvgDataArray& rSvgDataArray, sal_uInt32 nSvgDataArrayLeng
SvgData::SvgData(const OUString& rPath):
maSvgDataArray(),
- mnSvgDataArrayLength(0),
maPath(rPath),
maRange(),
maSequence(),
@@ -174,15 +171,14 @@ SvgData::SvgData(const OUString& rPath):
if(rIStm.GetError())
return;
const sal_uInt32 nStmLen(rIStm.remainingSize());
- if(nStmLen)
+ if (nStmLen)
{
- SvgDataArray aNewData(new sal_uInt8[nStmLen]);
- rIStm.Read(aNewData.get(), nStmLen);
+ maSvgDataArray.realloc(nStmLen);
+ rIStm.Read(maSvgDataArray.begin(), nStmLen);
- if(!rIStm.GetError())
+ if (rIStm.GetError())
{
- maSvgDataArray = aNewData;
- mnSvgDataArrayLength = nStmLen;
+ maSvgDataArray = SvgDataArray();
}
}
}