summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Weghorn <m.weghorn@posteo.de>2020-06-03 14:07:39 +0200
committerMichael Weghorn <m.weghorn@posteo.de>2020-06-03 17:24:05 +0200
commitf5f9cac0c5f04246718c438b4673b36e803fda29 (patch)
treefb18b2272a60ca88f0a219efe5d4a4951e7be4f4
parentc9faea128e46a5284948343f4f2cfc6f9e9174b8 (diff)
tdf#133633 winaccessibility: Add null check
The call to 'AccObjectManagerAgent::GetIAccessibleFromResID' may set 'pImAcc' to nullptr here (s. 'AccObjectWinManager::GetIAccessibleFromResID', which is called from there), so handle that case gracefully. Change-Id: I0dbd48974fd012ff086835b147cd9b9cfc8a052b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95430 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
-rw-r--r--winaccessibility/source/UAccCOM/MAccessible.cxx4
1 files changed, 4 insertions, 0 deletions
diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx
index c691f604faac..413999b35fab 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.cxx
+++ b/winaccessibility/source/UAccCOM/MAccessible.cxx
@@ -790,6 +790,10 @@ COM_DECLSPEC_NOTHROW STDMETHODIMP CMAccessible::get_accFocus(VARIANT *pvarChild)
{
IMAccessible* pIMAcc = nullptr;
g_pAgent->GetIAccessibleFromResID(m_dFocusChildID,&pIMAcc);
+ if (pIMAcc == nullptr)
+ {
+ return E_FAIL;
+ }
pIMAcc->AddRef();
pvarChild->vt = VT_DISPATCH;
pvarChild->pdispVal = pIMAcc;