sw/source/uibase/docvw/edtwin.cxx | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-)
New commits: commit c73da9a983bad3757d96f2a6be3101445ed58693 Author: Miklos Vajna <vmik...@collabora.co.uk> Date: Fri Jun 29 14:47:04 2018 +0200 sw: fix crash on F2 while drawing a polygon The first hunk is probably a regression from my earlier TextBox work, the other is inherited from OOo, I think. Change-Id: If87d135c84c483d7a39f90e9edcf00594204fab8 Reviewed-on: https://gerrit.libreoffice.org/56689 Reviewed-by: Miklos Vajna <vmik...@collabora.co.uk> Tested-by: Jenkins diff --git a/sw/source/uibase/docvw/edtwin.cxx b/sw/source/uibase/docvw/edtwin.cxx index 5e509ee18ec3..09f2794b067e 100644 --- a/sw/source/uibase/docvw/edtwin.cxx +++ b/sw/source/uibase/docvw/edtwin.cxx @@ -192,7 +192,11 @@ static SfxShell* lcl_GetTextShellFromDispatcher( SwView const & rView ); /// Check if the selected shape has a TextBox: if so, go into that instead. static bool lcl_goIntoTextBox(SwEditWin& rEditWin, SwWrtShell& rSh) { - SdrObject* pSdrObject = rSh.GetDrawView()->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj(); + SdrMark* pMark = rSh.GetDrawView()->GetMarkedObjectList().GetMark(0); + if (!pMark) + return false; + + SdrObject* pSdrObject = pMark->GetMarkedSdrObj(); SwFrameFormat* pObjectFormat = ::FindFrameFormat(pSdrObject); if (SwFrameFormat* pTextBoxFormat = SwTextBoxHelper::getOtherTextBoxFormat(pObjectFormat, RES_DRAWFRMFMT)) { @@ -2301,12 +2305,15 @@ KEYINPUT_CHECKTABLE: break; case SwKeyState::GoIntoDrawing: { - SdrObject* pObj = rSh.GetDrawView()->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj(); - if(pObj) + if (SdrMark* pMark = rSh.GetDrawView()->GetMarkedObjectList().GetMark(0)) { - EnterDrawTextMode(pObj->GetLogicRect().Center()); - if (dynamic_cast< const SwDrawTextShell *>( m_rView.GetCurShell() ) != nullptr ) - static_cast<SwDrawTextShell*>(m_rView.GetCurShell())->Init(); + SdrObject* pObj = pMark->GetMarkedSdrObj(); + if(pObj) + { + EnterDrawTextMode(pObj->GetLogicRect().Center()); + if (dynamic_cast< const SwDrawTextShell *>( m_rView.GetCurShell() ) != nullptr ) + static_cast<SwDrawTextShell*>(m_rView.GetCurShell())->Init(); + } } eKeyState = SwKeyState::End; } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits