summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--winaccessibility/source/UAccCOM/MAccessible.cxx13
-rw-r--r--winaccessibility/source/UAccCOM/MAccessible.h4
2 files changed, 9 insertions, 8 deletions
diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx
index c65c5af3d3d8..642e77896c4b 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.cxx
+++ b/winaccessibility/source/UAccCOM/MAccessible.cxx
@@ -207,7 +207,6 @@ m_pszValue(NULL),
m_pszDescription(NULL),
m_isDestroy(FALSE),
m_pszActionDescription(NULL),
-m_pXAction(NULL),
m_bRequiresSave(FALSE)
{
m_sLocation.m_dLeft=0;
@@ -2409,7 +2408,7 @@ STDMETHODIMP CMAccessible::GetUNOInterface(hyper * pXAcc)
*/
STDMETHODIMP CMAccessible::SetDefaultAction(hyper pAction)
{
- m_pXAction = reinterpret_cast<XAccessibleAction*>(pAction);
+ m_xAction = reinterpret_cast<XAccessibleAction*>(pAction);
return S_OK;
}
@@ -2434,7 +2433,7 @@ HRESULT STDMETHODCALLTYPE CMAccessible::get_accDefaultAction(VARIANT varChild, B
{
if(varChild.lVal==CHILDID_SELF)
{
- if( m_pXAction == NULL )
+ if (!m_xAction.is())
return DISP_E_MEMBERNOTFOUND;
SAFE_SYSFREESTRING(*pszDefaultAction);
*pszDefaultAction = SysAllocString(m_pszActionDescription);
@@ -2465,15 +2464,15 @@ HRESULT STDMETHODCALLTYPE CMAccessible::accDoDefaultAction(VARIANT varChild)
ISDESTROY()
if( varChild.vt != VT_I4 )
return E_INVALIDARG;
- if( m_pXAction == NULL )
+ if (!m_xAction.is())
return E_FAIL;
- if( m_pXAction->getAccessibleActionCount() == 0 )
+ if (m_xAction->getAccessibleActionCount() == 0)
return E_FAIL;
if(varChild.lVal==CHILDID_SELF)
{
- if(m_pXAction->getAccessibleActionCount() > 0)
- m_pXAction->doAccessibleAction(0);
+ if (m_xAction->getAccessibleActionCount() > 0)
+ m_xAction->doAccessibleAction(0);
return S_OK;
}
diff --git a/winaccessibility/source/UAccCOM/MAccessible.h b/winaccessibility/source/UAccCOM/MAccessible.h
index 315ae3cb41c9..69c6e468c2f8 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.h
+++ b/winaccessibility/source/UAccCOM/MAccessible.h
@@ -229,7 +229,9 @@ private:
BOOL m_isDestroy;
css::uno::Reference<css::accessibility::XAccessible> m_xAccessible;
- css::accessibility::XAccessibleAction * m_pXAction;
+ // initially m_xAction and m_xContext are the same object
+ // but they may be different once AccObject::UpdateAction() is called?
+ css::uno::Reference<css::accessibility::XAccessibleAction> m_xAction;
css::uno::Reference<css::accessibility::XAccessibleContext> m_xContext;
private: