[Libreoffice-commits] core.git: 2 commits - sd/source sw/source
Caolán McNamara (via logerrit)
logerrit at kemper.freedesktop.org
Tue Jul 16 18:32:33 UTC 2019
sd/source/ui/func/fumorph.cxx | 6 +-
sw/source/uibase/uiview/viewtab.cxx | 92 +++++++++++++++++++-----------------
2 files changed, 53 insertions(+), 45 deletions(-)
New commits:
commit ae7131ecd8596ef16dd4c2f86abb830a78a602ce
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Tue Jul 16 12:03:54 2019 +0100
Commit: Caolán McNamara <caolanm at redhat.com>
CommitDate: Tue Jul 16 20:31:42 2019 +0200
cid#1448540 Dereference null return value
Change-Id: I675a19c19ef64480b5414d9b2bb7a5387533dc4a
Reviewed-on: https://gerrit.libreoffice.org/75714
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sw/source/uibase/uiview/viewtab.cxx b/sw/source/uibase/uiview/viewtab.cxx
index bfc4594b3270..bc7c72c59040 100644
--- a/sw/source/uibase/uiview/viewtab.cxx
+++ b/sw/source/uibase/uiview/viewtab.cxx
@@ -2295,56 +2295,64 @@ void SwView::StateTabWin(SfxItemSet& rSet)
case SID_ATTR_PAGE_BITMAP:
{
SfxItemSet aSet = rDesc.GetMaster().GetAttrSet();
- drawing::FillStyle eXFS = aSet.GetItem(XATTR_FILLSTYLE)->GetValue();
- XFillStyleItem aFillStyleItem( eXFS );
- aFillStyleItem.SetWhich( SID_ATTR_PAGE_FILLSTYLE );
- rSet.Put(aFillStyleItem);
- switch(eXFS)
+ if (const auto pFillStyleItem = aSet.GetItem(XATTR_FILLSTYLE))
{
- case drawing::FillStyle_SOLID:
- {
- Color aColor = aSet.GetItem<XFillColorItem>( XATTR_FILLCOLOR, false )->GetColorValue();
- XFillColorItem aFillColorItem( OUString(), aColor );
- aFillColorItem.SetWhich( SID_ATTR_PAGE_COLOR );
- rSet.Put( aFillColorItem );
- }
- break;
+ drawing::FillStyle eXFS = pFillStyleItem->GetValue();
+ XFillStyleItem aFillStyleItem( eXFS );
+ aFillStyleItem.SetWhich( SID_ATTR_PAGE_FILLSTYLE );
+ rSet.Put(aFillStyleItem);
- case drawing::FillStyle_GRADIENT:
+ switch(eXFS)
{
- const XGradient& xGradient = aSet.GetItem<XFillGradientItem>( XATTR_FILLGRADIENT )->GetGradientValue();
- XFillGradientItem aFillGradientItem( OUString(), xGradient, SID_ATTR_PAGE_GRADIENT );
- rSet.Put( aFillGradientItem );
- }
- break;
+ case drawing::FillStyle_SOLID:
+ {
+ if (const auto pItem = aSet.GetItem<XFillColorItem>(XATTR_FILLCOLOR, false))
+ {
+ Color aColor = pItem->GetColorValue();
+ XFillColorItem aFillColorItem( OUString(), aColor );
+ aFillColorItem.SetWhich( SID_ATTR_PAGE_COLOR );
+ rSet.Put( aFillColorItem );
+ }
+ break;
+ }
- case drawing::FillStyle_HATCH:
- {
- const XFillHatchItem *pFillHatchItem( aSet.GetItem<XFillHatchItem>( XATTR_FILLHATCH ) );
- XFillHatchItem aFillHatchItem( pFillHatchItem->GetName(), pFillHatchItem->GetHatchValue());
- aFillHatchItem.SetWhich( SID_ATTR_PAGE_HATCH );
- rSet.Put( aFillHatchItem );
- }
- break;
+ case drawing::FillStyle_GRADIENT:
+ {
+ const XGradient& xGradient = aSet.GetItem<XFillGradientItem>( XATTR_FILLGRADIENT )->GetGradientValue();
+ XFillGradientItem aFillGradientItem( OUString(), xGradient, SID_ATTR_PAGE_GRADIENT );
+ rSet.Put( aFillGradientItem );
+ }
+ break;
- case drawing::FillStyle_BITMAP:
- {
- const XFillBitmapItem *pFillBitmapItem = aSet.GetItem<XFillBitmapItem>( XATTR_FILLBITMAP );
- XFillBitmapItem aFillBitmapItem( pFillBitmapItem->GetName(), pFillBitmapItem->GetGraphicObject() );
- aFillBitmapItem.SetWhich( SID_ATTR_PAGE_BITMAP );
- rSet.Put( aFillBitmapItem );
- }
- break;
- case drawing::FillStyle_NONE:
- {
- }
- break;
+ case drawing::FillStyle_HATCH:
+ {
+ const XFillHatchItem *pFillHatchItem( aSet.GetItem<XFillHatchItem>( XATTR_FILLHATCH ) );
+ XFillHatchItem aFillHatchItem( pFillHatchItem->GetName(), pFillHatchItem->GetHatchValue());
+ aFillHatchItem.SetWhich( SID_ATTR_PAGE_HATCH );
+ rSet.Put( aFillHatchItem );
+ }
+ break;
- default:
- break;
+ case drawing::FillStyle_BITMAP:
+ {
+ const XFillBitmapItem *pFillBitmapItem = aSet.GetItem<XFillBitmapItem>( XATTR_FILLBITMAP );
+ XFillBitmapItem aFillBitmapItem( pFillBitmapItem->GetName(), pFillBitmapItem->GetGraphicObject() );
+ aFillBitmapItem.SetWhich( SID_ATTR_PAGE_BITMAP );
+ rSet.Put( aFillBitmapItem );
+ }
+ break;
+ case drawing::FillStyle_NONE:
+ {
+ }
+ break;
+
+ default:
+ break;
+ }
}
+ break;
}
- break;
+
}
nWhich = aIter.NextWhich();
}
commit 55df612be5e3e2541f8e42f5122febfcffc77d68
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Tue Jul 16 11:50:36 2019 +0100
Commit: Caolán McNamara <caolanm at redhat.com>
CommitDate: Tue Jul 16 20:31:24 2019 +0200
cid#1448419 Resource leak
Change-Id: I1ca12ee7097ba2f4e644d3ff91cff1a49af49cbe
Reviewed-on: https://gerrit.libreoffice.org/75713
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sd/source/ui/func/fumorph.cxx b/sd/source/ui/func/fumorph.cxx
index e97cf686e12f..f9827986f9da 100644
--- a/sd/source/ui/func/fumorph.cxx
+++ b/sd/source/ui/func/fumorph.cxx
@@ -380,8 +380,8 @@ void FuMorph::ImpInsertPolygons(
return;
SfxItemSet aSet( aSet1 );
- SdrObjGroup* pObjGroup = new SdrObjGroup(mpView->getSdrModelFromSdrView());
- SdrObjList* pObjList = pObjGroup->GetSubList();
+ std::unique_ptr<SdrObjGroup, SdrObjectFreeOp> xObjGroup(new SdrObjGroup(mpView->getSdrModelFromSdrView()));
+ SdrObjList* pObjList = xObjGroup->GetSubList();
const size_t nCount = rPolyPolyList3D.size();
const double fStep = 1. / ( nCount + 1 );
const double fDelta = nEndLineWidth - nStartLineWidth;
@@ -434,7 +434,7 @@ void FuMorph::ImpInsertPolygons(
pObj2->CloneSdrObject(pObj2->getSdrModelFromSdrObject()) );
mpView->DeleteMarked();
- mpView->InsertObjectAtView( pObjGroup, *pPageView, SdrInsertFlags:: SETDEFLAYER );
+ mpView->InsertObjectAtView(xObjGroup.release(), *pPageView, SdrInsertFlags:: SETDEFLAYER);
}
}
More information about the Libreoffice-commits
mailing list