vcl/source/gdi/pdfwriter_impl.cxx | 10 +++++----- vcl/source/gdi/pdfwriter_impl.hxx | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-)
New commits: commit bfe4c908d1a83337d0eeb0c08145908183793975 Author: Jan Holesovsky <ke...@collabora.com> AuthorDate: Tue Apr 2 23:07:59 2019 +0200 Commit: Tomaž Vajngerl <qui...@gmail.com> CommitDate: Wed Mar 25 19:41:04 2020 +0100 Embedded PDF: It is a shared_ptr, no need to copy. Reviewed-on: https://gerrit.libreoffice.org/70208 Reviewed-by: Jan Holesovsky <ke...@collabora.com> Tested-by: Jan Holesovsky <ke...@collabora.com> (cherry picked from commit ff2c5e766517bbc23409f04335c418bb6fcad6eb) Reviewed-on: https://gerrit.libreoffice.org/77694 Tested-by: Jenkins Reviewed-by: Ashod Nakashian <ashnak...@gmail.com> (cherry picked from commit 254fd20dd5cb8206c7eac19f11dec0369c12d366) Change-Id: Iedb31bbe0e81dc9568e84858d8d26eac03c47ffb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91057 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com> Reviewed-by: Tomaž Vajngerl <qui...@gmail.com> diff --git a/vcl/source/gdi/pdfwriter_impl.cxx b/vcl/source/gdi/pdfwriter_impl.cxx index 4557100b957e..8aec8544431a 100644 --- a/vcl/source/gdi/pdfwriter_impl.cxx +++ b/vcl/source/gdi/pdfwriter_impl.cxx @@ -4875,12 +4875,12 @@ bool PDFWriterImpl::emitEmbeddedFiles() aLine.append(rEmbeddedFile.m_nObject); aLine.append(" 0 obj\n"); aLine.append("<< /Type /EmbeddedFile /Length "); - aLine.append(static_cast<sal_Int64>(rEmbeddedFile.m_aData.size())); + aLine.append(static_cast<sal_Int64>(rEmbeddedFile.m_pData->size())); aLine.append(" >>\nstream\n"); CHECK_RETURN(writeBuffer(aLine.getStr(), aLine.getLength())); aLine.setLength(0); - CHECK_RETURN(writeBuffer(rEmbeddedFile.m_aData.data(), rEmbeddedFile.m_aData.size())); + CHECK_RETURN(writeBuffer(rEmbeddedFile.m_pData->data(), rEmbeddedFile.m_pData->size())); aLine.append("\nendstream\nendobj\n\n"); CHECK_RETURN(writeBuffer(aLine.getStr(), aLine.getLength())); @@ -9688,18 +9688,18 @@ void PDFWriterImpl::createEmbeddedFile(const Graphic& rGraphic, ReferenceXObject sal_uInt32 nLength = rGraphic.getVectorGraphicData()->getVectorGraphicDataArrayLength(); auto const & rArray = rGraphic.getVectorGraphicData()->getVectorGraphicDataArray(); - std::vector<sal_Int8> aPDFData(rArray.getConstArray(), rArray.getConstArray() + nLength); + auto pPDFData = std::make_shared<std::vector<sal_Int8>>(rArray.getConstArray(), rArray.getConstArray() + nLength); if (m_aContext.UseReferenceXObject) { // Store the original PDF data as an embedded file. m_aEmbeddedFiles.emplace_back(); m_aEmbeddedFiles.back().m_nObject = createObject(); - m_aEmbeddedFiles.back().m_aData = aPDFData; + m_aEmbeddedFiles.back().m_pData = pPDFData; rEmit.m_nEmbeddedObject = m_aEmbeddedFiles.back().m_nObject; } else - rEmit.m_aPDFData = aPDFData; + rEmit.m_aPDFData = *pPDFData; rEmit.m_nFormObject = createObject(); rEmit.m_aPixelSize = rGraphic.GetPrefSize(); diff --git a/vcl/source/gdi/pdfwriter_impl.hxx b/vcl/source/gdi/pdfwriter_impl.hxx index 18b0059fb69e..ca3b797d5b6f 100644 --- a/vcl/source/gdi/pdfwriter_impl.hxx +++ b/vcl/source/gdi/pdfwriter_impl.hxx @@ -424,7 +424,7 @@ public: /// ID of the file. sal_Int32 m_nObject; /// Contents of the file. - std::vector<sal_Int8> m_aData; + std::shared_ptr<std::vector<sal_Int8>> m_pData; PDFEmbeddedFile() : m_nObject(0) _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits