summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJim Raykowski <raykowj@gmail.com>2021-12-22 23:58:09 -0900
committerXisco Fauli <xiscofauli@libreoffice.org>2021-12-24 15:56:12 +0100
commitdf77dcbbb2ecd3a272a3ea55877a1b1c9fd8ef03 (patch)
treeeea356bed42837ed6bb8d4cb8c2e5faf4deab82c
parenttdf#138743 sw_redlinehide: delete FlyFrames when hiding tracked changes (diff)
downloadcore-df77dcbbb2ecd3a272a3ea55877a1b1c9fd8ef03.tar.gz
core-df77dcbbb2ecd3a272a3ea55877a1b1c9fd8ef03.zip
Outline folding: check pointer before use
Change-Id: Ifa79ef5f286da77fdac9464b4e271021107bf34e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127348 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com> (cherry picked from commit 1609bb6ab5e34fc8fff67240e3c49dde93f2d2d7) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127379 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r--sw/source/uibase/docvw/edtwin.cxx13
1 files changed, 9 insertions, 4 deletions
diff --git a/sw/source/uibase/docvw/edtwin.cxx b/sw/source/uibase/docvw/edtwin.cxx
index 5fea06590626..0fc6e91b594d 100644
--- a/sw/source/uibase/docvw/edtwin.cxx
+++ b/sw/source/uibase/docvw/edtwin.cxx
@@ -3908,10 +3908,15 @@ void SwEditWin::MouseMove(const MouseEvent& _rMEvt)
SwContentFrame* pContentFrame = aSwContentAtPos.aFnd.pNode->GetTextNode()->getLayoutFrame(nullptr);
if (pContentFrame != m_pSavedOutlineFrame)
{
- if (m_pSavedOutlineFrame && !m_pSavedOutlineFrame->IsInDtor() &&
- rNds.GetOutLineNds().Seek_Entry(static_cast<SwTextFrame*>(m_pSavedOutlineFrame)->GetTextNodeFirst(), &nPos) &&
- rSh.GetAttrOutlineContentVisible(nPos))
- GetFrameControlsManager().RemoveControlsByType(FrameControlType::Outline, m_pSavedOutlineFrame);
+ if (m_pSavedOutlineFrame && !m_pSavedOutlineFrame->IsInDtor())
+ {
+ SwTextNode* pTextNode =
+ static_cast<SwTextFrame*>(m_pSavedOutlineFrame)->GetTextNodeFirst();
+ if (pTextNode && rNds.GetOutLineNds().Seek_Entry(pTextNode, &nPos) &&
+ rSh.GetAttrOutlineContentVisible(nPos))
+ GetFrameControlsManager().RemoveControlsByType(
+ FrameControlType::Outline, m_pSavedOutlineFrame);
+ }
m_pSavedOutlineFrame = pContentFrame;
}
// show button