diff options
author | Xisco Fauli <xiscofauli@libreoffice.org> | 2024-05-27 22:12:38 +0200 |
---|---|---|
committer | Xisco Fauli <xiscofauli@libreoffice.org> | 2024-05-28 11:17:56 +0200 |
commit | f60fd89e3d4ee60d9b9d0a02ed96c36ff8667188 (patch) | |
tree | 5f1d43d6daa74a89eeafed2a19c60d1147478187 | |
parent | 072bd5d40a149bd50e95d24fc54417094193077e (diff) |
sd: warning C6011: Dereferencing NULL pointer
Change-Id: Id073e5d340fc91836b4689fb3e7a558ef3263e56
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168119
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r-- | sd/source/ui/table/TableDesignPane.cxx | 14 | ||||
-rw-r--r-- | sd/source/ui/view/viewoverlaymanager.cxx | 10 |
2 files changed, 15 insertions, 9 deletions
diff --git a/sd/source/ui/table/TableDesignPane.cxx b/sd/source/ui/table/TableDesignPane.cxx index 1b9262d954e3..54797bb3894c 100644 --- a/sd/source/ui/table/TableDesignPane.cxx +++ b/sd/source/ui/table/TableDesignPane.cxx @@ -379,9 +379,13 @@ void TableDesignWidget::EditStyle(const OUString& rCommand) aBoxInfoItem.SetTable(false); aNewAttr.Put(aBoxInfoItem); + SdrView* pDrawView = mrBase.GetDrawView(); + if (!pDrawView) + return; + SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create(); ScopedVclPtr<SfxAbstractTabDialog> pDlg(pFact ? pFact->CreateSvxFormatCellsDialog( - mrBase.GetFrameWeld(), aNewAttr, mrBase.GetDrawView()->GetModel(), true) : nullptr); + mrBase.GetFrameWeld(), aNewAttr, pDrawView->GetModel(), true) : nullptr); if (pDlg && pDlg->Execute() == RET_OK) { endTextEditForStyle(xTableStyle); @@ -452,10 +456,9 @@ void TableDesignWidget::ApplyStyle() if( sStyleName.isEmpty() ) return; - SdrView* pView = mrBase.GetDrawView(); if( mxSelectedTable.is() ) { - if( pView ) + if (SdrView* pView = mrBase.GetDrawView()) { if (pView->IsTextEdit()) pView->SdrEndTextEdit(); @@ -693,8 +696,9 @@ void TableDesignWidget::endTextEditForStyle(const Reference<XInterface>& rStyle) if (xTableStyle != rStyle) return; - if (mrBase.GetDrawView()->IsTextEdit()) - mrBase.GetDrawView()->SdrEndTextEdit(); + SdrView* pDrawView = mrBase.GetDrawView(); + if (pDrawView && pDrawView->IsTextEdit()) + pDrawView->SdrEndTextEdit(); } void TableDesignWidget::addListener() diff --git a/sd/source/ui/view/viewoverlaymanager.cxx b/sd/source/ui/view/viewoverlaymanager.cxx index bd2e6be970f8..dfc6c61759fc 100644 --- a/sd/source/ui/view/viewoverlaymanager.cxx +++ b/sd/source/ui/view/viewoverlaymanager.cxx @@ -479,8 +479,9 @@ IMPL_LINK_NOARG(ViewOverlayManager, UpdateTagsHdl, void*, void) bool bChanges = DisposeTags(); bChanges |= CreateTags(); - if( bChanges && mrBase.GetDrawView() ) - static_cast< ::sd::View* >( mrBase.GetDrawView() )->updateHandles(); + SdrView* pDrawView = mrBase.GetDrawView(); + if( bChanges && pDrawView ) + static_cast< ::sd::View* >( pDrawView )->updateHandles(); } bool ViewOverlayManager::CreateTags() @@ -490,14 +491,15 @@ bool ViewOverlayManager::CreateTags() std::shared_ptr<ViewShell> aMainShell = mrBase.GetMainViewShell(); SdPage* pPage = aMainShell ? aMainShell->getCurrentPage() : nullptr; + SdrView* pDrawView = mrBase.GetDrawView(); - if( pPage && !pPage->IsMasterPage() && (pPage->GetPageKind() == PageKind::Standard) ) + if( pDrawView && pPage && !pPage->IsMasterPage() && (pPage->GetPageKind() == PageKind::Standard) ) { const std::list< SdrObject* >& rShapes = pPage->GetPresentationShapeList().getList(); for( SdrObject* pShape : rShapes ) { - if( pShape->IsEmptyPresObj() && (pShape->GetObjIdentifier() == SdrObjKind::OutlineText) && (mrBase.GetDrawView()->GetTextEditObject() != pShape) ) + if( pShape->IsEmptyPresObj() && (pShape->GetObjIdentifier() == SdrObjKind::OutlineText) && (pDrawView->GetTextEditObject() != pShape) ) { rtl::Reference< SmartTag > xTag( new ChangePlaceholderTag( *mrBase.GetMainViewShell()->GetView(), *pShape ) ); maTagVector.push_back(xTag); |