diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2023-03-07 10:14:23 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2023-03-07 11:24:47 +0000 |
commit | db0175bf3a4da8aec0e3607731b464c1ce91ee1d (patch) | |
tree | 9c8c5a077f0fc0d83bf95e220fa53ef6a6adba02 | |
parent | f3a0ed5d63823a1a111de7330d4ddbaf4e0b6d41 (diff) |
no need to allocate these separately
they are all one or two words in size
Change-Id: I44d60e9fca03ce6709551a660661dd2a6778fd7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148377
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r-- | filter/source/msfilter/svdfppt.cxx | 6 | ||||
-rw-r--r-- | include/filter/msfilter/svdfppt.hxx | 4 | ||||
-rw-r--r-- | sd/source/filter/ppt/pptin.cxx | 2 |
3 files changed, 6 insertions, 6 deletions
diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx index cb6381fb6fd3..faded37d12e2 100644 --- a/filter/source/msfilter/svdfppt.cxx +++ b/filter/source/msfilter/svdfppt.cxx @@ -846,7 +846,7 @@ rtl::Reference<SdrObject> SdrEscherImport::ProcessObj( SvStream& rSt, DffObjData aTextObj.SetVertical( bVerticalText ); if ( pRet ) { - bool bDeleteSource = aTextObj.GetOEPlaceHolderAtom() != nullptr; + bool bDeleteSource = aTextObj.GetOEPlaceHolderAtom().has_value(); if ( bDeleteSource && dynamic_cast<const SdrGrafObj* >(pRet.get()) == nullptr // we are not allowed to get && dynamic_cast<const SdrObjGroup* >(pRet.get()) == nullptr // grouped placeholder objects && dynamic_cast<const SdrOle2Obj* >(pRet.get()) == nullptr ) @@ -6481,8 +6481,8 @@ PPTTextObj::PPTTextObj( SvStream& rIn, SdrPowerPointImport& rSdrPowerPointImport DffRecordHeader aPlaceHolderAtomHd; if ( SvxMSDffManager::SeekToRec( rIn, PPT_PST_OEPlaceholderAtom, aClientDataContainerHd.GetRecEndFilePos(), &aPlaceHolderAtomHd ) ) { - mxImplTextObj->mpPlaceHolderAtom.reset( new PptOEPlaceholderAtom ); - ReadPptOEPlaceholderAtom( rIn, *( mxImplTextObj->mpPlaceHolderAtom ) ); + mxImplTextObj->moPlaceHolderAtom.emplace(); + ReadPptOEPlaceholderAtom( rIn, *( mxImplTextObj->moPlaceHolderAtom ) ); } rIn.Seek( nOldPos ); DffRecordHeader aProgTagHd; diff --git a/include/filter/msfilter/svdfppt.hxx b/include/filter/msfilter/svdfppt.hxx index 9c515615e0af..0fad50bf993f 100644 --- a/include/filter/msfilter/svdfppt.hxx +++ b/include/filter/msfilter/svdfppt.hxx @@ -1202,7 +1202,7 @@ struct ImplPPTTextObj final : public salhelper::SimpleReferenceObject { sal_uInt32 mnShapeId; sal_uInt32 mnShapeMaster; - std::unique_ptr<PptOEPlaceholderAtom> mpPlaceHolderAtom; + std::optional<PptOEPlaceholderAtom> moPlaceHolderAtom; TSS_Type mnInstance; TSS_Type mnDestinationInstance; MSO_SPT meShapeType; @@ -1256,7 +1256,7 @@ public: void SetDestinationInstance( TSS_Type nInstance ) { mxImplTextObj->mnDestinationInstance = nInstance; } - PptOEPlaceholderAtom* GetOEPlaceHolderAtom() const { return mxImplTextObj->mpPlaceHolderAtom.get(); } + const std::optional<PptOEPlaceholderAtom> & GetOEPlaceHolderAtom() const { return mxImplTextObj->moPlaceHolderAtom; } sal_uInt32 GetTextFlags() const { return mxImplTextObj->mnTextFlags; } void SetVertical( bool bVertical ) { diff --git a/sd/source/filter/ppt/pptin.cxx b/sd/source/filter/ppt/pptin.cxx index 8f022c606764..0cdc7f8fb59b 100644 --- a/sd/source/filter/ppt/pptin.cxx +++ b/sd/source/filter/ppt/pptin.cxx @@ -2201,7 +2201,7 @@ SdrObject* ImplSdPPTImport::ApplyTextObj( PPTTextObj* pTextObj, SdrTextObj* pObj ppStyleSheetAry = nullptr; PresObjKind ePresKind = PresObjKind::NONE; - PptOEPlaceholderAtom* pPlaceHolder = pTextObj->GetOEPlaceHolderAtom(); + const std::optional<PptOEPlaceholderAtom>& pPlaceHolder = pTextObj->GetOEPlaceHolderAtom(); OUString aPresentationText; if ( pPlaceHolder ) { |