From 65e41592a650887c8d00586385119effa54de5fa Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Mon, 9 Jul 2018 17:10:49 +0200 Subject: pass SvStream around by std::unique_ptr and give utl::OStreamWrapper a new constructor so that it knows it is taking ownership of the SvStream, which appears to fix several leaks Change-Id: Idcbcca9b81a4f0345fd8b8c8a2f4e84213686a6b Reviewed-on: https://gerrit.libreoffice.org/57187 Tested-by: Jenkins Reviewed-by: Noel Grandin --- writerperfect/source/common/WPXSvInputStream.cxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'writerperfect') diff --git a/writerperfect/source/common/WPXSvInputStream.cxx b/writerperfect/source/common/WPXSvInputStream.cxx index 2dfee8a44799..1c06f1b784bd 100644 --- a/writerperfect/source/common/WPXSvInputStream.cxx +++ b/writerperfect/source/common/WPXSvInputStream.cxx @@ -144,7 +144,7 @@ struct OLEStorageImpl { OLEStorageImpl(); - void initialize(SvStream* pStream); + void initialize(std::unique_ptr pStream); tools::SvRef getStream(const rtl::OUString& rPath); tools::SvRef const& getStream(std::size_t nId); @@ -178,12 +178,12 @@ OLEStorageImpl::OLEStorageImpl() { } -void OLEStorageImpl::initialize(SvStream* const pStream) +void OLEStorageImpl::initialize(std::unique_ptr pStream) { if (!pStream) return; - mxRootStorage.ref = new SotStorage(pStream, true); + mxRootStorage.ref = new SotStorage(pStream.release(), true); traverse(mxRootStorage.ref, ""); -- cgit