winaccessibility/source/UAccCOM/MAccessible.cxx | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-)
New commits: commit 37bb1d0d8032eb859322d7d3c60f8799e48250a0 Author: Michael Meeks <michael.me...@collabora.com> Date: Mon Jan 27 12:08:55 2014 +0000 fdo#73464 - guard against NULL / unset m_xAccessible. Change-Id: I3351acf18d334447336ee98761190fdff32d5b85 Reviewed-on: https://gerrit.libreoffice.org/7692 Reviewed-by: David Ostrovsky <david.ostrov...@gmx.de> Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx index 5fb1172..6ed3c4e 100644 --- a/winaccessibility/source/UAccCOM/MAccessible.cxx +++ b/winaccessibility/source/UAccCOM/MAccessible.cxx @@ -1434,6 +1434,9 @@ IMAccessible* CMAccessible::GetChildInterface(long dChildID)//for test } else { + if (!m_xAccessible.is()) + return NULL; + Reference<XAccessibleContext> const pRContext = m_xAccessible->getAccessibleContext(); if( !pRContext.is() ) @@ -1948,6 +1951,9 @@ STDMETHODIMP CMAccessible:: get_groupPosition(long __RPC_FAR *groupLevel,long __ return E_INVALIDARG; } + if (!m_xAccessible.is()) + return E_FAIL; + Reference<XAccessibleContext> const pRContext = m_xAccessible->getAccessibleContext(); if(!pRContext.is()) @@ -3316,6 +3322,9 @@ STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *pAttr) ENTER_PROTECTED_BLOCK ISDESTROY() + if (!m_xAccessible.is()) + return E_FAIL; + Reference<XAccessibleContext> pRContext = m_xAccessible->getAccessibleContext(); if( !pRContext.is() ) { commit 7fc75233d5db5ee43f71299a56e06e40ff5c529f Author: Steve Yin <stev...@apache.org> Date: Mon Jan 27 05:49:26 2014 +0000 Resolves: #i124095# Multiple IAccessible and IAccessible2... interface methods do not check for NULL pointer access, nor do they trap exceptions Fixed by Michael Curran (cherry picked from commit 113171f2a5d726af6c5266e98e8e790ac6729d2d) Conflicts: winaccessibility/source/UAccCOM/MAccessible.cxx Change-Id: I28d4b885a6c2db487c2754c2ca11290b3844570b Reviewed-on: https://gerrit.libreoffice.org/7691 Tested-by: Caolán McNamara <caol...@redhat.com> Reviewed-by: Tor Lillqvist <t...@collabora.com> Reviewed-by: Caolán McNamara <caol...@redhat.com> diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx index 4da2165..5fb1172 100644 --- a/winaccessibility/source/UAccCOM/MAccessible.cxx +++ b/winaccessibility/source/UAccCOM/MAccessible.cxx @@ -378,8 +378,8 @@ STDMETHODIMP CMAccessible::get_accChild(VARIANT varChild, IDispatch **ppdispChil return S_OK; } *ppdispChild = GetChildInterface(varChild.lVal); - if (!(*ppdispChild)) - return S_FALSE; + if((*ppdispChild) == NULL) + return E_FAIL; (*ppdispChild)->AddRef(); return S_OK; } @@ -1709,6 +1709,7 @@ STDMETHODIMP CMAccessible::get_nRelations( long __RPC_FAR *nRelations) SolarMutexGuard g; ENTER_PROTECTED_BLOCK + ISDESTROY() // #CHECK# if(nRelations == NULL) @@ -1802,6 +1803,7 @@ STDMETHODIMP CMAccessible::get_relations( long, IAccessibleRelation __RPC_FAR *_ SolarMutexGuard g; ENTER_PROTECTED_BLOCK + ISDESTROY() // #CHECK# if(relation == NULL || nRelations == NULL) @@ -3311,6 +3313,9 @@ STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *pAttr) { SolarMutexGuard g; + ENTER_PROTECTED_BLOCK + ISDESTROY() + Reference<XAccessibleContext> pRContext = m_xAccessible->getAccessibleContext(); if( !pRContext.is() ) { @@ -3334,6 +3339,7 @@ STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *pAttr) return S_OK; } + LEAVE_PROTECTED_BLOCK } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits