diff options
author | Caolán McNamara <caolanm@redhat.com> | 2021-03-19 15:32:53 +0000 |
---|---|---|
committer | Thorsten Behrens <thorsten.behrens@allotropia.de> | 2021-04-23 17:07:27 +0200 |
commit | 0e5099beaa424938d4254e3998b61e94990fd01c (patch) | |
tree | 11bcb2abb32407a7100bf3733ba5719ad9ec7750 | |
parent | f359d4ad33c5a17a8a85d19561f69d21e40ad188 (diff) |
cid#1474166 Deference null return value
Change-Id: I725eff105f963b139ae8646cd1cb193ce737d313
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112760
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
(cherry picked from commit 229558c0bf257e4e559cc1b84bd2918b04c68305)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114366
Tested-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
-rw-r--r-- | svx/source/form/fmview.cxx | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/svx/source/form/fmview.cxx b/svx/source/form/fmview.cxx index 806b9cade78c..5d121a5ca602 100644 --- a/svx/source/form/fmview.cxx +++ b/svx/source/form/fmview.cxx @@ -516,24 +516,26 @@ bool FmFormView::KeyInput(const KeyEvent& rKEvt, vcl::Window* pWin) // tdf#139804 Allow selecting form controls with Alt-<Mnemonic> if (rKeyCode.IsMod2() && rKeyCode.GetCode()) { - FmFormPage* pCurPage = GetCurPage(); - for (size_t a = 0; a < pCurPage->GetObjCount(); ++a) + if (FmFormPage* pCurPage = GetCurPage()) { - SdrObject* pObj = pCurPage->GetObj(a); - FmFormObj* pFormObject = FmFormObj::GetFormObject(pObj); - if (!pFormObject) - continue; - - Reference<awt::XControl> xControl = pFormObject->GetUnoControl(*this, *pWin); - if (!xControl.is()) - continue; - const vcl::I18nHelper& rI18nHelper = Application::GetSettings().GetUILocaleI18nHelper(); - VclPtr<vcl::Window> pWindow = VCLUnoHelper::GetWindow(xControl->getPeer()); - if (rI18nHelper.MatchMnemonic(pWindow->GetText(), rKEvt.GetCharCode())) + for (size_t a = 0; a < pCurPage->GetObjCount(); ++a) { - pWindow->GrabFocus(); - bDone = true; - break; + SdrObject* pObj = pCurPage->GetObj(a); + FmFormObj* pFormObject = FmFormObj::GetFormObject(pObj); + if (!pFormObject) + continue; + + Reference<awt::XControl> xControl = pFormObject->GetUnoControl(*this, *pWin); + if (!xControl.is()) + continue; + const vcl::I18nHelper& rI18nHelper = Application::GetSettings().GetUILocaleI18nHelper(); + VclPtr<vcl::Window> pWindow = VCLUnoHelper::GetWindow(xControl->getPeer()); + if (rI18nHelper.MatchMnemonic(pWindow->GetText(), rKEvt.GetCharCode())) + { + pWindow->GrabFocus(); + bDone = true; + break; + } } } } |