diff options
author | Caolán McNamara <caolanm@redhat.com> | 2017-03-17 21:21:55 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2017-03-17 23:35:45 +0000 |
commit | dac990d646461c2f5a44596d5fd6231e4462c987 (patch) | |
tree | 7f6e75f2684dc65b0d43a83aade7043aed0858be /filter | |
parent | c5f25a3835b9fa4ad4295fa3e6212bbc2311e23f (diff) |
utl::TempFile can give a stream directly without bringing ucb into it
Change-Id: I6ecfdaafc22f8fad68115465e18b1b1b7366fff6
Reviewed-on: https://gerrit.libreoffice.org/35380
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'filter')
-rw-r--r-- | filter/source/msfilter/svdfppt.cxx | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx index c41be3839c33..ed94ca963e50 100644 --- a/filter/source/msfilter/svdfppt.cxx +++ b/filter/source/msfilter/svdfppt.cxx @@ -1837,15 +1837,18 @@ SdrObject* SdrPowerPointImport::ImportOLE( long nOLEId, if ( aTmpFile.IsValid() ) { - std::unique_ptr<SvStream> pDest(::utl::UcbStreamHelper::CreateStream( aTmpFile.GetURL(), StreamMode::TRUNC | StreamMode::WRITE )); - if ( pDest ) + SvStream* pDest = aTmpFile.GetStream(StreamMode::TRUNC | StreamMode::WRITE); + if (pDest) + { bSuccess = SdrPowerPointOLEDecompress( *pDest, rStCtrl, nLen ); + } + aTmpFile.CloseStream(); } if ( bSuccess ) { - std::unique_ptr<SvStream> pDest(::utl::UcbStreamHelper::CreateStream( aTmpFile.GetURL(), StreamMode::READ )); + SvStream* pDest = aTmpFile.GetStream(StreamMode::READ); Storage* pObjStor = pDest ? new Storage( *pDest, true ) : nullptr; - if ( pObjStor ) + if (pObjStor) { tools::SvRef<SotStorage> xObjStor( new SotStorage( pObjStor ) ); if ( xObjStor.is() && !xObjStor->GetError() ) @@ -1947,6 +1950,7 @@ SdrObject* SdrPowerPointImport::ImportOLE( long nOLEId, } } } + aTmpFile.CloseStream(); } } } |