sw/source/uibase/uiview/viewsrch.cxx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)
New commits: commit a0c24199e4905c8220fb4254dfd0b263a44626a7 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Thu Dec 15 16:20:31 2022 +0000 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Thu Dec 15 19:31:33 2022 +0000 likely fix for frequent SfxViewFrame::GetChildWindow() crash crash report id: 58e9a91e-9feb-4eb4-a28e-27921d3e1b99 Change-Id: I110d96f1c73f95025918ccc4043dac40c5e1dc4f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144240 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> diff --git a/sw/source/uibase/uiview/viewsrch.cxx b/sw/source/uibase/uiview/viewsrch.cxx index 7559b7bf2fb8..269bce441ed8 100644 --- a/sw/source/uibase/uiview/viewsrch.cxx +++ b/sw/source/uibase/uiview/viewsrch.cxx @@ -830,9 +830,13 @@ SvxSearchDialog* SwView::GetSearchDialog() { #if HAVE_FEATURE_DESKTOP const sal_uInt16 nId = SvxSearchDialogWrapper::GetChildWindowId(); - SvxSearchDialogWrapper *pWrp = static_cast<SvxSearchDialogWrapper*>( SfxViewFrame::Current()->GetChildWindow(nId) ); - auto pSrchDlg = pWrp ? pWrp->getDialog() : nullptr; - return pSrchDlg; + SfxViewFrame* pFrame = SfxViewFrame::Current(); + if (!pFrame) + return nullptr; + SvxSearchDialogWrapper *pWrp = static_cast<SvxSearchDialogWrapper*>(pFrame->GetChildWindow(nId)); + if (!pWrp) + return nullptr; + return pWrp->getDialog(); #else return nullptr; #endif