sw/source/core/frmedt/feshview.cxx | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-)
New commits: commit f918e71d4e615fcc4527051a6e7f6bb4768d1269 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Mon Nov 19 14:44:21 2018 +0000 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Mon Nov 19 22:06:19 2018 +0100 Resolves: tdf#112696 survive missing SwDrawContact its removed when the object was removed from the page to be reinserted as as a group member Change-Id: I8edeb89ae07b73572b65413817212a79ef8957b3 Reviewed-on: https://gerrit.libreoffice.org/63579 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> diff --git a/sw/source/core/frmedt/feshview.cxx b/sw/source/core/frmedt/feshview.cxx index 787db5fbecf7..1d00cd578e29 100644 --- a/sw/source/core/frmedt/feshview.cxx +++ b/sw/source/core/frmedt/feshview.cxx @@ -2241,6 +2241,11 @@ RndStdIds SwFEShell::GetAnchorId() const break; } SwDrawContact *pContact = static_cast<SwDrawContact*>(GetUserCall(pObj)); + if (!pContact) + { + nRet = RndStdIds::UNKNOWN; + break; + } RndStdIds nId = pContact->GetFormat()->GetAnchor().GetAnchorId(); if ( nRet == RndStdIds(SHRT_MAX) ) nRet = nId; @@ -2345,11 +2350,13 @@ bool SwFEShell::IsGroupSelected() SdrObject *pObj = rMrkList.GetMark( i )->GetMarkedSdrObj(); // consider 'virtual' drawing objects. // Thus, use corresponding method instead of checking type. - if ( pObj->IsGroupObject() && - // --> #i38505# No ungroup allowed for 3d objects - !pObj->Is3DObj() && - RndStdIds::FLY_AS_CHAR != static_cast<SwDrawContact*>(GetUserCall(pObj))-> - GetFormat()->GetAnchor().GetAnchorId() ) + if (!pObj->IsGroupObject()) + continue; + // --> #i38505# No ungroup allowed for 3d objects + if (pObj->Is3DObj()) + continue; + SwDrawContact *pContact = static_cast<SwDrawContact*>(GetUserCall(pObj)); + if (!pContact || RndStdIds::FLY_AS_CHAR != pContact->GetFormat()->GetAnchor().GetAnchorId()) { return true; } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits