summaryrefslogtreecommitdiff
path: root/sw/source/core/layout/wsfrm.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sw/source/core/layout/wsfrm.cxx')
-rw-r--r--sw/source/core/layout/wsfrm.cxx8
1 files changed, 5 insertions, 3 deletions
diff --git a/sw/source/core/layout/wsfrm.cxx b/sw/source/core/layout/wsfrm.cxx
index d1a54738812b..14aa081621f1 100644
--- a/sw/source/core/layout/wsfrm.cxx
+++ b/sw/source/core/layout/wsfrm.cxx
@@ -1204,14 +1204,16 @@ void SwContentFrame::Cut()
// RemoveSuperfluous can only remove empty pages at the end;
// find if there are pages without content following pPage
// and if so request a call to CheckPageDescs()
- SwPageFrame const* pNext(pPage);
- if (pRoot->GetCurrShell()->Imp()->IsAction())
+ SwViewShell *pSh = pRoot->GetCurrShell();
+ // tdf#152983 pPage is null when called from SwHeadFootFrame ctor
+ if (pPage && pSh && pSh->Imp()->IsAction())
{
+ SwPageFrame const* pNext(pPage);
while ((pNext = static_cast<SwPageFrame const*>(pNext->GetNext())))
{
if (!sw::IsPageFrameEmpty(*pNext) && !pNext->IsFootnotePage())
{
- pRoot->GetCurrShell()->Imp()->GetLayAction().SetCheckPageNum(pPage->GetPhyPageNum());
+ pSh->Imp()->GetLayAction().SetCheckPageNum(pPage->GetPhyPageNum());
break;
}
}