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-25 22:09:27 +0200 |
commit | f4efef35a85d7ab0d31491f4e0dc11c31e047204 (patch) | |
tree | dedf760cea69152d54720fb798112c94963e382b | |
parent | ec64ba1cc90729f04f60e54cd8ad4546e8a1a669 (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/+/114367
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 e090d7c73640..17139528c909 100644 --- a/svx/source/form/fmview.cxx +++ b/svx/source/form/fmview.cxx @@ -517,24 +517,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; + } } } } |