vcl/source/gdi/pdfwriter.cxx | 1 + vcl/source/gdi/pdfwriter_impl.cxx | 1 + 2 files changed, 2 insertions(+)
New commits: commit 27cfadd5e7a0897ee9fd046ab3e35edfd3aa2369 Author: Jan-Marek Glogowski <[email protected]> AuthorDate: Wed Nov 13 03:45:38 2019 +0100 Commit: Jan-Marek Glogowski <[email protected]> CommitDate: Fri Nov 15 19:24:26 2019 +0100 tdf#128434 really free the VclPtr<PDFWriterImpl> This fixes the major reference cycle introduced by my commit b85ff98383942360901b8242cf77366782400426 ("Change PDFWriterImpl into an OutputDevice"), and adds the missing disposeAndClear() call. Maybe it would be better to add a ScopedVclPtr in the PDFWriter class and revert all the other VclPtr<PDFWriterImpl> users back to the original PDFWriterImpl*. The PDFWriter code really doesn't need any of the special VclPtr handling. Change-Id: Ia64fb207ad274d9323e350022f6b8af35c44e9f5 Reviewed-on: https://gerrit.libreoffice.org/82562 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <[email protected]> (cherry picked from commit 4dd87ccdab80eb094cede538e3d742148df3880a) Reviewed-on: https://gerrit.libreoffice.org/82660 (cherry picked from commit f4a2bc0da65695d9744e8b4be20a09c03fb196e0) Reviewed-on: https://gerrit.libreoffice.org/82779 Reviewed-by: Michael Weghorn <[email protected]> diff --git a/vcl/source/gdi/pdfwriter.cxx b/vcl/source/gdi/pdfwriter.cxx index a50b0dd717a2..b8d35359af46 100644 --- a/vcl/source/gdi/pdfwriter.cxx +++ b/vcl/source/gdi/pdfwriter.cxx @@ -35,6 +35,7 @@ PDFWriter::PDFWriter( const PDFWriter::PDFWriterContext& rContext, const css::un PDFWriter::~PDFWriter() { + xImplementation.disposeAndClear(); } OutputDevice* PDFWriter::GetReferenceDevice() diff --git a/vcl/source/gdi/pdfwriter_impl.cxx b/vcl/source/gdi/pdfwriter_impl.cxx index 46f8393de082..e1186fa22f32 100644 --- a/vcl/source/gdi/pdfwriter_impl.cxx +++ b/vcl/source/gdi/pdfwriter_impl.cxx @@ -1428,6 +1428,7 @@ void PDFWriterImpl::dispose() { if( m_aCipher ) rtl_cipher_destroyARCFOUR( m_aCipher ); + m_aPages.clear(); VirtualDevice::dispose(); } _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
