diff options
author | Caolán McNamara <caolanm@redhat.com> | 2019-07-16 12:03:54 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2019-07-16 20:31:42 +0200 |
commit | ae7131ecd8596ef16dd4c2f86abb830a78a602ce (patch) | |
tree | e4722d322dfdf456122cd0d51812ecac370d8aa1 /sw | |
parent | 55df612be5e3e2541f8e42f5122febfcffc77d68 (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.cxx | 92 |
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(); } |