summaryrefslogtreecommitdiff
path: root/winaccessibility/source/service/AccObject.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'winaccessibility/source/service/AccObject.cxx')
-rw-r--r--winaccessibility/source/service/AccObject.cxx9
1 files changed, 4 insertions, 5 deletions
diff --git a/winaccessibility/source/service/AccObject.cxx b/winaccessibility/source/service/AccObject.cxx
index d1e805ce2428..68dcc10105f2 100644
--- a/winaccessibility/source/service/AccObject.cxx
+++ b/winaccessibility/source/service/AccObject.cxx
@@ -162,7 +162,7 @@ AccObject::AccObject(XAccessible* pAcc, AccObjectManagerAgent* pAgent,
AccEventListener* pListener) :
m_resID (0),
m_pParantID (nullptr),
- m_pIMAcc (nullptr),
+ m_pIMAcc (UAccCOMCreateInstance()),
m_pParentObj(nullptr),
m_pListener (pListener),
m_xAccRef( pAcc )
@@ -186,7 +186,6 @@ AccObject::AccObject(XAccessible* pAcc, AccObjectManagerAgent* pAgent,
*/
AccObject::~AccObject()
{
- m_pIMAcc = nullptr;
m_xAccRef = nullptr;
m_xAccActionRef = nullptr;
m_xAccContextRef = nullptr;
@@ -256,8 +255,6 @@ void AccObject::UpdateValidWindow()
*/
void AccObject::ImplInitializeCreateObj()
{
- m_pIMAcc = UAccCOMCreateInstance();
-
assert(m_pIMAcc);
}
@@ -1048,9 +1045,11 @@ void AccObject::SetParentHWND(HWND hWnd)
m_pParantID = hWnd;
}
-void AccObject::SetListener(rtl::Reference<AccEventListener> const& pListener)
+rtl::Reference<AccEventListener> AccObject::SetListener(rtl::Reference<AccEventListener> const& pListener)
{
+ rtl::Reference<AccEventListener> pRet(m_pListener);
m_pListener = pListener;
+ return pRet;
}
AccEventListener* AccObject::getListener()