diff options
author | Jim Raykowski <raykowj@gmail.com> | 2021-12-22 23:58:09 -0900 |
---|---|---|
committer | Xisco Fauli <xiscofauli@libreoffice.org> | 2021-12-28 18:04:28 +0100 |
commit | 7dfd06cf9e0f34956b7f81e9052934184cde779f (patch) | |
tree | c6e0215e421d163041b80bf4dfaa5ba86365dfb7 /sw | |
parent | 3088fbcdc33195cbf7f46df2ae2696315f579c98 (diff) |
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/+/127382
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/uibase/docvw/edtwin.cxx | 13 |
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 |