summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2019-07-16 12:03:54 +0100
committerCaolán McNamara <caolanm@redhat.com>2019-07-16 20:31:42 +0200
commitae7131ecd8596ef16dd4c2f86abb830a78a602ce (patch)
treee4722d322dfdf456122cd0d51812ecac370d8aa1 /sw
parent55df612be5e3e2541f8e42f5122febfcffc77d68 (diff)
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@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sw')
-rw-r--r--sw/source/uibase/uiview/viewtab.cxx92
1 files changed, 50 insertions, 42 deletions
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();
}