[Libreoffice-commits] core.git: 6 commits - configure.ac Repository.mk scp2/source winaccessibility/inc winaccessibility/source

Michael Stahl mstahl at redhat.com
Wed Nov 20 15:51:18 PST 2013


 Repository.mk                                             |    7 +
 configure.ac                                              |    1 
 scp2/source/ooo/file_ooo.scp                              |    2 
 winaccessibility/inc/AccObjectManagerAgent.hxx            |   19 ++---
 winaccessibility/inc/AccObjectWinManager.hxx              |    4 -
 winaccessibility/inc/g_msacc.hxx                          |    4 -
 winaccessibility/source/UAccCOM/AccAction.cxx             |    6 -
 winaccessibility/source/UAccCOM/AccAction.h               |    4 -
 winaccessibility/source/UAccCOM/AccActionBase.cxx         |    2 
 winaccessibility/source/UAccCOM/AccActionBase.h           |    2 
 winaccessibility/source/UAccCOM/AccComponent.cxx          |    2 
 winaccessibility/source/UAccCOM/AccComponent.h            |    2 
 winaccessibility/source/UAccCOM/AccComponentBase.cxx      |    2 
 winaccessibility/source/UAccCOM/AccComponentBase.h        |    2 
 winaccessibility/source/UAccCOM/AccEditableText.cxx       |    2 
 winaccessibility/source/UAccCOM/AccEditableText.h         |    2 
 winaccessibility/source/UAccCOM/AccHyperLink.cxx          |    8 +-
 winaccessibility/source/UAccCOM/AccHyperLink.h            |    4 -
 winaccessibility/source/UAccCOM/AccHypertext.cxx          |    4 -
 winaccessibility/source/UAccCOM/AccHypertext.h            |    2 
 winaccessibility/source/UAccCOM/AccImage.cxx              |    2 
 winaccessibility/source/UAccCOM/AccImage.h                |    2 
 winaccessibility/source/UAccCOM/AccRelation.cxx           |    8 +-
 winaccessibility/source/UAccCOM/AccRelation.h             |    2 
 winaccessibility/source/UAccCOM/AccTable.cxx              |   14 ++-
 winaccessibility/source/UAccCOM/AccTable.h                |    2 
 winaccessibility/source/UAccCOM/AccText.cxx               |    2 
 winaccessibility/source/UAccCOM/AccText.h                 |    2 
 winaccessibility/source/UAccCOM/AccTextBase.cxx           |    2 
 winaccessibility/source/UAccCOM/AccTextBase.h             |    2 
 winaccessibility/source/UAccCOM/AccValue.cxx              |    2 
 winaccessibility/source/UAccCOM/AccValue.h                |    2 
 winaccessibility/source/UAccCOM/EnumVariant.cxx           |   14 ++-
 winaccessibility/source/UAccCOM/EnumVariant.h             |    2 
 winaccessibility/source/UAccCOM/MAccessible.cxx           |   52 +++++++------
 winaccessibility/source/UAccCOM/MAccessible.h             |   11 +-
 winaccessibility/source/UAccCOM/UNOXWrapper.h             |   10 +-
 winaccessibility/source/UAccCOMIDL/UAccCOM.idl            |   18 ++--
 winaccessibility/source/service/AccEventListener.cxx      |    5 -
 winaccessibility/source/service/AccFrameEventListener.cxx |    4 -
 winaccessibility/source/service/AccObject.cxx             |    9 +-
 winaccessibility/source/service/AccObjectManagerAgent.cxx |   53 +++++++-------
 winaccessibility/source/service/AccObjectWinManager.cxx   |   11 +-
 winaccessibility/source/service/AccTopWindowListener.cxx  |   29 +------
 winaccessibility/source/service/msaaservice_impl.cxx      |   26 ++++--
 45 files changed, 182 insertions(+), 185 deletions(-)

New commits:
commit d47e869c7ef1d573d1f7107150ca448f86d292b3
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Nov 21 00:34:39 2013 +0100

    winaccessibility: "typedef sal_Int32 HWND;" - sigh...
    
    Change-Id: I5c51652932537cfb200183c30c5c1d954586f8fa

diff --git a/winaccessibility/source/service/AccEventListener.cxx b/winaccessibility/source/service/AccEventListener.cxx
index 5a3c687..151aa7f 100644
--- a/winaccessibility/source/service/AccEventListener.cxx
+++ b/winaccessibility/source/service/AccEventListener.cxx
@@ -25,11 +25,6 @@
 
 #include <toolkit/awt/Vclxwindow.hxx>
 
-#ifndef _SV_SYSDATA_HXX
-#if defined( WIN ) || defined( WNT ) || defined( OS2 )
-typedef sal_Int32 HWND;
-#endif
-#endif
 #include "AccEventListener.hxx"
 #include "AccObjectManagerAgent.hxx"
 #include "unomsaaevent.hxx"
commit a36d446591353d7e4ed7eb9e25d98c6411e78a8c
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Nov 21 00:32:11 2013 +0100

    winaccessibility: fix even more pointless HWND to long casting
    
    Change-Id: I16a39a0dde27b17f1467a9605a4566b05f53a485

diff --git a/winaccessibility/inc/AccObjectWinManager.hxx b/winaccessibility/inc/AccObjectWinManager.hxx
index 2b20558..41ae6a2 100644
--- a/winaccessibility/inc/AccObjectWinManager.hxx
+++ b/winaccessibility/inc/AccObjectWinManager.hxx
@@ -52,7 +52,7 @@ private:
     typedef std::map<HWND, void*> XHWNDToXAccHash;
     typedef std::map<const long, AccObject*> XResIdToAccObjHash;
 
-    typedef std::map<const long, com::sun::star::accessibility::XAccessible* >
+    typedef std::map<const HWND, com::sun::star::accessibility::XAccessible* >
         XHWNDToDocumentHash;
 
     //XAccessible to AccObject
@@ -83,7 +83,7 @@ private:
 
     AccObject* GetTopWindowAccObj(HWND hWnd);
 
-    com::sun::star::accessibility::XAccessible* GetAccDocByHWND( long pWnd );
+    com::sun::star::accessibility::XAccessible* GetAccDocByHWND(HWND hWnd);
 
     void       DeleteAccListener( AccObject* pAccObj );
     void       InsertAccChildNode(AccObject* pCurObj,AccObject* pParentObj,HWND pWnd);
diff --git a/winaccessibility/source/UAccCOM/EnumVariant.cxx b/winaccessibility/source/UAccCOM/EnumVariant.cxx
index 0eaa486..f588dd2 100644
--- a/winaccessibility/source/UAccCOM/EnumVariant.cxx
+++ b/winaccessibility/source/UAccCOM/EnumVariant.cxx
@@ -68,7 +68,7 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Next(ULONG cElements,VARIANT __RPC_FAR *
         else if(pRXAcc.is())
         {
             if(CMAccessible::g_pAgent)
-                CMAccessible::g_pAgent->InsertAccObj(pRXAcc.get(),pUNOInterface,NULL);
+                CMAccessible::g_pAgent->InsertAccObj(pRXAcc.get(),pUNOInterface);
             BOOL isGet = CMAccessible::get_IAccessibleFromXAccessible(
                             pRXAcc.get(), &pChild);
             if(isGet)
diff --git a/winaccessibility/source/service/AccFrameEventListener.cxx b/winaccessibility/source/service/AccFrameEventListener.cxx
index c9ef5a8..98d7b41 100644
--- a/winaccessibility/source/service/AccFrameEventListener.cxx
+++ b/winaccessibility/source/service/AccFrameEventListener.cxx
@@ -91,8 +91,8 @@ void AccFrameEventListener::HandleChildChangedEvent(Any oldValue, Any newValue)
             const SystemEnvData* systemdata=window->GetSystemData();
 
             //add this child
-            //TODO(davido): FixMe
-            pAgent->InsertAccObj( pAcc,pAccessible,(long)(HWND)systemdata->hWnd);
+            pAgent->InsertAccObj(pAcc, pAccessible,
+                    reinterpret_cast<sal_Int64>(systemdata->hWnd));
             //add all oldValue's existing children
             pAgent->InsertChildrenAccObj(pAcc);
             pAgent->NotifyAccEvent(UM_EVENT_CHILD_ADDED, pAcc);
diff --git a/winaccessibility/source/service/AccObjectWinManager.cxx b/winaccessibility/source/service/AccObjectWinManager.cxx
index 88d31a8..5773a63 100644
--- a/winaccessibility/source/service/AccObjectWinManager.cxx
+++ b/winaccessibility/source/service/AccObjectWinManager.cxx
@@ -771,13 +771,12 @@ sal_Bool AccObjectWinManager::InsertAccObj( XAccessible* pXAcc,XAccessible* pPar
     //for file name support
     if ( pObj.GetRole() == DOCUMENT )
     {
-        XHWNDToDocumentHash::iterator aIter = XHWNDDocList.find( (long)pWnd );
+        XHWNDToDocumentHash::iterator aIter = XHWNDDocList.find(pWnd);
         if ( aIter != XHWNDDocList.end() )
         {
             XHWNDDocList.erase( aIter );
         }
-        XHWNDDocList.insert( XHWNDToDocumentHash::value_type( (long)pWnd, pXAcc ) );
-
+        XHWNDDocList.insert( XHWNDToDocumentHash::value_type(pWnd, pXAcc) );
     }
     //end of file name
 
@@ -1288,7 +1287,7 @@ short AccObjectWinManager::GetRole(com::sun::star::accessibility::XAccessible* p
     return -1;
 }
 
-XAccessible* AccObjectWinManager::GetAccDocByHWND( long pWnd )
+XAccessible* AccObjectWinManager::GetAccDocByHWND(HWND pWnd)
 {
     XHWNDToDocumentHash::iterator aIter;
     aIter = XHWNDDocList.find( pWnd );
@@ -1303,8 +1302,8 @@ XAccessible* AccObjectWinManager::GetAccDocByHWND( long pWnd )
 XAccessible* AccObjectWinManager::GetAccDocByAccTopWin( XAccessible* pXAcc )
 {
     AccObject* pAccObj = GetAccObjByXAcc( pXAcc );
-    long pWnd = (long)( pAccObj->GetParentHWND() );
-    return GetAccDocByHWND( pWnd );
+    HWND hWnd = pAccObj->GetParentHWND();
+    return GetAccDocByHWND(hWnd);
 }
 
 bool AccObjectWinManager::IsTopWinAcc( com::sun::star::accessibility::XAccessible* pXAcc )
diff --git a/winaccessibility/source/service/AccTopWindowListener.cxx b/winaccessibility/source/service/AccTopWindowListener.cxx
index a463ca4..ca8a1c0 100644
--- a/winaccessibility/source/service/AccTopWindowListener.cxx
+++ b/winaccessibility/source/service/AccTopWindowListener.cxx
@@ -72,7 +72,8 @@ void AccTopWindowListener::HandleWindowOpened( com::sun::star::accessibility::XA
     //Only AccessibleContext exist, add all listeners
     if(pAccessibleContext != NULL && systemdata != NULL)
     {
-        accManagerAgent.SaveTopWindowHandle((long)(HWND)systemdata->hWnd, pAccessible);
+        accManagerAgent.SaveTopWindowHandle(
+                reinterpret_cast<sal_Int64>(systemdata->hWnd), pAccessible);
 
         AddAllListeners(pAccessible,NULL,(HWND)systemdata->hWnd);
 
@@ -145,7 +146,8 @@ void AccTopWindowListener::AddAllListeners(com::sun::star::accessibility::XAcces
         return;
     }
 
-    accManagerAgent.InsertAccObj( pAccessible, pParentXAcc,(long)(HWND)pWND );
+    accManagerAgent.InsertAccObj(pAccessible, pParentXAcc,
+            reinterpret_cast<sal_Int64>(pWND));
 
     if (!accManagerAgent.IsContainer(pAccessible))
     {
commit 77f94ded7adaeaaf1074312632b7d933fd2d7fbe
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Nov 21 00:11:57 2013 +0100

    winaccessibility: pass pointers as "hyper" in the COM IDL
    
    Change-Id: I083589fd57540e3b4ec488aeb84bc92dddc02d36

diff --git a/winaccessibility/source/UAccCOM/AccAction.cxx b/winaccessibility/source/UAccCOM/AccAction.cxx
index e1a97f1..57568fa 100644
--- a/winaccessibility/source/UAccCOM/AccAction.cxx
+++ b/winaccessibility/source/UAccCOM/AccAction.cxx
@@ -98,7 +98,7 @@ STDMETHODIMP CAccAction::get_keyBinding(
  *
  * @param    pXInterface    the pointer of UNO interface.
  */
-STDMETHODIMP CAccAction::put_XInterface(long pXInterface)
+STDMETHODIMP CAccAction::put_XInterface(hyper pXInterface)
 {
 
     return CAccActionBase::put_XInterface(pXInterface);
@@ -108,11 +108,11 @@ STDMETHODIMP CAccAction::put_XInterface(long pXInterface)
    * @param pXSubInterface XAccessibleHyperlink interface.
    * @return Result.
 */
-STDMETHODIMP CAccAction::put_XSubInterface(long pXSubInterface)
+STDMETHODIMP CAccAction::put_XSubInterface(hyper pXSubInterface)
 {
 
 
-    pRXAct = (XAccessibleAction*)pXSubInterface;
+    pRXAct = reinterpret_cast<XAccessibleAction*>(pXSubInterface);
 
     return S_OK;
 }
diff --git a/winaccessibility/source/UAccCOM/AccAction.h b/winaccessibility/source/UAccCOM/AccAction.h
index 0c16d05..67e08bb 100644
--- a/winaccessibility/source/UAccCOM/AccAction.h
+++ b/winaccessibility/source/UAccCOM/AccAction.h
@@ -93,10 +93,10 @@ public:
         /* [retval][out] */ long __RPC_FAR *nBinding);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XSubInterface)(long pXSubInterface);
+    STDMETHOD(put_XSubInterface)(hyper pXSubInterface);
 
 };
 
diff --git a/winaccessibility/source/UAccCOM/AccActionBase.cxx b/winaccessibility/source/UAccCOM/AccActionBase.cxx
index 327e091..982e58f 100644
--- a/winaccessibility/source/UAccCOM/AccActionBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccActionBase.cxx
@@ -248,7 +248,7 @@ STDMETHODIMP CAccActionBase::get_keyBinding(
  *
  * @param    pXInterface    the pointer of UNO interface.
  */
-STDMETHODIMP CAccActionBase::put_XInterface(long pXInterface)
+STDMETHODIMP CAccActionBase::put_XInterface(hyper pXInterface)
 {
 
 
diff --git a/winaccessibility/source/UAccCOM/AccActionBase.h b/winaccessibility/source/UAccCOM/AccActionBase.h
index 8a6f64a..0ed9914 100644
--- a/winaccessibility/source/UAccCOM/AccActionBase.h
+++ b/winaccessibility/source/UAccCOM/AccActionBase.h
@@ -68,7 +68,7 @@ public:
         /* [retval][out] */ long __RPC_FAR *nBinding);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
     static void GetkeyBindingStrByXkeyBinding( const com::sun::star::uno::Sequence< com::sun::star::awt::KeyStroke > &keySet, OLECHAR* pString );
 
diff --git a/winaccessibility/source/UAccCOM/AccComponent.cxx b/winaccessibility/source/UAccCOM/AccComponent.cxx
index ed8ef29..e9a7759 100644
--- a/winaccessibility/source/UAccCOM/AccComponent.cxx
+++ b/winaccessibility/source/UAccCOM/AccComponent.cxx
@@ -63,7 +63,7 @@ STDMETHODIMP CAccComponent::get_background(IA2Color * background)
  *
  * @param    pXInterface    the pointer of UNO interface.
  */
-STDMETHODIMP CAccComponent::put_XInterface(long pXInterface)
+STDMETHODIMP CAccComponent::put_XInterface(hyper pXInterface)
 {
 
     return CAccComponentBase::put_XInterface(pXInterface);
diff --git a/winaccessibility/source/UAccCOM/AccComponent.h b/winaccessibility/source/UAccCOM/AccComponent.h
index 0982d62..bafeb36 100644
--- a/winaccessibility/source/UAccCOM/AccComponent.h
+++ b/winaccessibility/source/UAccCOM/AccComponent.h
@@ -86,7 +86,7 @@ public:
     STDMETHOD(get_background)(IA2Color * background);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
 };
 
diff --git a/winaccessibility/source/UAccCOM/AccComponentBase.cxx b/winaccessibility/source/UAccCOM/AccComponentBase.cxx
index 49cea21..666faf2 100644
--- a/winaccessibility/source/UAccCOM/AccComponentBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccComponentBase.cxx
@@ -183,7 +183,7 @@ STDMETHODIMP CAccComponentBase::get_background(IA2Color * background)
  *
  * @param    pXInterface    the pointer of UNO interface.
  */
-STDMETHODIMP CAccComponentBase::put_XInterface(long pXInterface)
+STDMETHODIMP CAccComponentBase::put_XInterface(hyper pXInterface)
 {
 
     CHECK_ENABLE_INF
diff --git a/winaccessibility/source/UAccCOM/AccComponentBase.h b/winaccessibility/source/UAccCOM/AccComponentBase.h
index a894816..9081157 100644
--- a/winaccessibility/source/UAccCOM/AccComponentBase.h
+++ b/winaccessibility/source/UAccCOM/AccComponentBase.h
@@ -59,7 +59,7 @@ public:
     STDMETHOD(get_background)(IA2Color * background);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
 protected:
 
diff --git a/winaccessibility/source/UAccCOM/AccEditableText.cxx b/winaccessibility/source/UAccCOM/AccEditableText.cxx
index a6ceed3..3514ab9 100644
--- a/winaccessibility/source/UAccCOM/AccEditableText.cxx
+++ b/winaccessibility/source/UAccCOM/AccEditableText.cxx
@@ -480,7 +480,7 @@ void CAccEditableText::get_AnyFromOLECHAR(const ::rtl::OUString &ouName, const :
  *
  * @param    pXInterface    the pointer of UNO interface.
  */
-STDMETHODIMP CAccEditableText::put_XInterface(long pXInterface)
+STDMETHODIMP CAccEditableText::put_XInterface(hyper pXInterface)
 {
 
 
diff --git a/winaccessibility/source/UAccCOM/AccEditableText.h b/winaccessibility/source/UAccCOM/AccEditableText.h
index 409a9fa..c130731 100644
--- a/winaccessibility/source/UAccCOM/AccEditableText.h
+++ b/winaccessibility/source/UAccCOM/AccEditableText.h
@@ -96,7 +96,7 @@ public:
     STDMETHOD(setAttributes)(long startOffset, long endOffset, BSTR * attributes);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
 private:
 
diff --git a/winaccessibility/source/UAccCOM/AccHyperLink.cxx b/winaccessibility/source/UAccCOM/AccHyperLink.cxx
index 490c2e6..7944cc6 100644
--- a/winaccessibility/source/UAccCOM/AccHyperLink.cxx
+++ b/winaccessibility/source/UAccCOM/AccHyperLink.cxx
@@ -248,7 +248,7 @@ STDMETHODIMP CAccHyperLink::get_valid(/* [retval][out] */ boolean __RPC_FAR *val
    * @param pXInterface XAccessibleContext interface.
    * @return Result.
 */
-STDMETHODIMP CAccHyperLink::put_XInterface(long pXInterface)
+STDMETHODIMP CAccHyperLink::put_XInterface(hyper pXInterface)
 {
 
     CHECK_ENABLE_INF
@@ -282,13 +282,13 @@ STDMETHODIMP CAccHyperLink::put_XInterface(long pXInterface)
    * @param pXSubInterface XAccessibleHyperlink interface.
    * @return Result.
 */
-STDMETHODIMP CAccHyperLink::put_XSubInterface(long pXSubInterface)
+STDMETHODIMP CAccHyperLink::put_XSubInterface(hyper pXSubInterface)
 {
 
     CHECK_ENABLE_INF
 
-    pRXLink = (XAccessibleHyperlink*)pXSubInterface;
-    pRXAct = (XAccessibleAction*)pXSubInterface;
+    pRXLink = reinterpret_cast<XAccessibleHyperlink*>(pXSubInterface);
+    pRXAct = reinterpret_cast<XAccessibleAction*>(pXSubInterface);
 
     return S_OK;
 }
diff --git a/winaccessibility/source/UAccCOM/AccHyperLink.h b/winaccessibility/source/UAccCOM/AccHyperLink.h
index e49fe73..7505900 100644
--- a/winaccessibility/source/UAccCOM/AccHyperLink.h
+++ b/winaccessibility/source/UAccCOM/AccHyperLink.h
@@ -119,10 +119,10 @@ public:
     STDMETHOD(get_valid)(/* [retval][out] */ boolean __RPC_FAR *valid);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XSubInterface)(long pXSubInterface);
+    STDMETHOD(put_XSubInterface)(hyper pXSubInterface);
 
 private:
 
diff --git a/winaccessibility/source/UAccCOM/AccHypertext.cxx b/winaccessibility/source/UAccCOM/AccHypertext.cxx
index 89fc622..ae9e86a 100644
--- a/winaccessibility/source/UAccCOM/AccHypertext.cxx
+++ b/winaccessibility/source/UAccCOM/AccHypertext.cxx
@@ -336,7 +336,7 @@ STDMETHODIMP CAccHypertext::get_hyperlink(long index,IAccessibleHyperlink **hype
         plink->QueryInterface(IID_IUNOXWrapper, (void**)&wrapper);
         if(wrapper)
         {
-            wrapper->put_XSubInterface((long)pRLink.get()/*pXI*/);
+            wrapper->put_XSubInterface(reinterpret_cast<hyper>(pRLink.get()));
             wrapper->Release();
         }
         *hyperlink = plink;
@@ -381,7 +381,7 @@ STDMETHODIMP CAccHypertext::get_hyperlinkIndex(long charIndex, long *hyperlinkIn
    * @param pXInterface UNO interface.
    * @return Result.
 */
-STDMETHODIMP CAccHypertext::put_XInterface(long pXInterface)
+STDMETHODIMP CAccHypertext::put_XInterface(hyper pXInterface)
 {
 
 
diff --git a/winaccessibility/source/UAccCOM/AccHypertext.h b/winaccessibility/source/UAccCOM/AccHypertext.h
index eae03c8..94c737e 100644
--- a/winaccessibility/source/UAccCOM/AccHypertext.h
+++ b/winaccessibility/source/UAccCOM/AccHypertext.h
@@ -148,7 +148,7 @@ public:
     STDMETHOD(get_hyperlinkIndex)(long charIndex, long *hyperlinkIndex);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
 private:
 
diff --git a/winaccessibility/source/UAccCOM/AccImage.cxx b/winaccessibility/source/UAccCOM/AccImage.cxx
index bd27bba..49f4033 100644
--- a/winaccessibility/source/UAccCOM/AccImage.cxx
+++ b/winaccessibility/source/UAccCOM/AccImage.cxx
@@ -73,7 +73,7 @@ STDMETHODIMP CAccImage::get_imageSize(
    * @param pXInterface UNO interface.
    * @return Result.
 */
-STDMETHODIMP CAccImage::put_XInterface(long pXInterface)
+STDMETHODIMP CAccImage::put_XInterface(hyper pXInterface)
 {
 
 
diff --git a/winaccessibility/source/UAccCOM/AccImage.h b/winaccessibility/source/UAccCOM/AccImage.h
index 31e0f1e..f59e782 100644
--- a/winaccessibility/source/UAccCOM/AccImage.h
+++ b/winaccessibility/source/UAccCOM/AccImage.h
@@ -84,7 +84,7 @@ public:
         long __RPC_FAR *width);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
 private:
 
diff --git a/winaccessibility/source/UAccCOM/AccRelation.cxx b/winaccessibility/source/UAccCOM/AccRelation.cxx
index 14a1e21..32721e0 100644
--- a/winaccessibility/source/UAccCOM/AccRelation.cxx
+++ b/winaccessibility/source/UAccCOM/AccRelation.cxx
@@ -106,10 +106,10 @@ STDMETHODIMP CAccRelation::get_target(long targetIndex, IUnknown * * target)
     if( targetIndex >= nCount )
         return E_FAIL;
 
-    Reference<XInterface> pRAcc = xTargets[targetIndex];
+    Reference<XAccessible> xRAcc(xTargets[targetIndex], UNO_QUERY);
     IAccessible* pRet = NULL;
 
-    BOOL isGet = CMAccessible::get_IAccessibleFromXAccessible((long)pRAcc.get(),&pRet);
+    BOOL isGet = CMAccessible::get_IAccessibleFromXAccessible(xRAcc.get(), &pRet);
     if(isGet)
     {
         *target = /*(IAccessible2 *)*/(IUnknown*)pRet;
@@ -172,10 +172,10 @@ STDMETHODIMP CAccRelation::get_targets(long, IUnknown * * target, long * nTarget
    * @param pXSubInterface AccessibleRelation pointer.
    * @return Result.
 */
-STDMETHODIMP CAccRelation::put_XSubInterface(long pXSubInterface)
+STDMETHODIMP CAccRelation::put_XSubInterface(hyper pXSubInterface)
 {
 
-    relation = *((AccessibleRelation*)pXSubInterface);
+    relation = *reinterpret_cast<AccessibleRelation*>(pXSubInterface);
     return S_OK;
 }
 
diff --git a/winaccessibility/source/UAccCOM/AccRelation.h b/winaccessibility/source/UAccCOM/AccRelation.h
index ae05d16..eec77f0 100644
--- a/winaccessibility/source/UAccCOM/AccRelation.h
+++ b/winaccessibility/source/UAccCOM/AccRelation.h
@@ -73,7 +73,7 @@ public:
     STDMETHOD(get_targets)(long maxTargets, IUnknown * * target, long * nTargets);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XSubInterface)(long pXSubInterface);
+    STDMETHOD(put_XSubInterface)(hyper pXSubInterface);
 
     //static OLECHAR* getRelationTypeOLECHAR(int type);
     static BSTR getRelationTypeBSTR(int type);
diff --git a/winaccessibility/source/UAccCOM/AccTable.cxx b/winaccessibility/source/UAccCOM/AccTable.cxx
index 52f0cd1..e7935b2 100644
--- a/winaccessibility/source/UAccCOM/AccTable.cxx
+++ b/winaccessibility/source/UAccCOM/AccTable.cxx
@@ -66,7 +66,7 @@ STDMETHODIMP CAccTable::get_accessibleAt(long row, long column, IUnknown * * acc
 
     IAccessible* pRet = NULL;
 
-    BOOL isTRUE = CMAccessible::get_IAccessibleFromXAccessible((long)pRAcc.get(),&pRet);
+    BOOL isTRUE = CMAccessible::get_IAccessibleFromXAccessible(pRAcc.get(), &pRet);
     if(isTRUE)
     {
         *accessible = (IAccessible2 *)pRet;
@@ -78,7 +78,7 @@ STDMETHODIMP CAccTable::get_accessibleAt(long row, long column, IUnknown * * acc
         Reference<XAccessible> pxTable(GetXInterface(),UNO_QUERY);
 
         CMAccessible::g_pAgent->InsertAccObj(pRAcc.get(),pxTable.get());
-        isTRUE = CMAccessible::get_IAccessibleFromXAccessible((long)pRAcc.get(),&pRet);
+        isTRUE = CMAccessible::get_IAccessibleFromXAccessible(pRAcc.get(), &pRet);
 
         if(isTRUE)
         {
@@ -220,7 +220,8 @@ STDMETHODIMP CAccTable::get_columnHeader(IAccessibleTable __RPC_FAR *__RPC_FAR *
                                     (void **)&m_pIMacc
                                   );
     DeactivateActContext();
-    ((CMAccessible*)m_pIMacc)->SetXAccessible((long)pRXColumnHeader.get());
+    ((CMAccessible*)m_pIMacc)->SetXAccessible(
+        reinterpret_cast<hyper>(pRXColumnHeader.get()));
     m_pIMacc->QueryInterface(IID_IAccessibleTable,(void **)accessibleTable);
     if( SUCCEEDED(hr) )
     {
@@ -452,7 +453,8 @@ STDMETHODIMP CAccTable::get_rowHeader(IAccessibleTable __RPC_FAR *__RPC_FAR *acc
                                     (void **)&m_pIMacc
                                   );
     DeactivateActContext();
-    ((CMAccessible*)m_pIMacc)->SetXAccessible((long)pRXRowHeader.get());
+    ((CMAccessible*)m_pIMacc)->SetXAccessible(
+        reinterpret_cast<hyper>(pRXRowHeader.get()));
     m_pIMacc->QueryInterface(IID_IAccessibleTable,(void **)accessibleTable);
     if( SUCCEEDED(hr) )
     {
@@ -568,7 +570,7 @@ STDMETHODIMP CAccTable::get_summary(IUnknown * * accessible)
     Reference<XAccessible> pRAcc = GetXInterface()->getAccessibleSummary();
 
     IAccessible* pRet = NULL;
-    BOOL isTRUE = CMAccessible::get_IAccessibleFromXAccessible((long)pRAcc.get(),&pRet);
+    BOOL isTRUE = CMAccessible::get_IAccessibleFromXAccessible(pRAcc.get(), &pRet);
 
     if(pRet)
     {
@@ -856,7 +858,7 @@ STDMETHODIMP CAccTable::unselectColumn(long column)
  *
  * @param    pXInterface    the pointer of UNO interface.
  */
-STDMETHODIMP CAccTable::put_XInterface(long pXInterface)
+STDMETHODIMP CAccTable::put_XInterface(hyper pXInterface)
 {
 
     CHECK_ENABLE_INF
diff --git a/winaccessibility/source/UAccCOM/AccTable.h b/winaccessibility/source/UAccCOM/AccTable.h
index a8c23a1..664f0a0 100644
--- a/winaccessibility/source/UAccCOM/AccTable.h
+++ b/winaccessibility/source/UAccCOM/AccTable.h
@@ -158,7 +158,7 @@ public:
     STDMETHOD(get_modelChange)(IA2TableModelChange  *modelChange);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
 private:
 
diff --git a/winaccessibility/source/UAccCOM/AccText.cxx b/winaccessibility/source/UAccCOM/AccText.cxx
index fa63de0..84e98c2 100644
--- a/winaccessibility/source/UAccCOM/AccText.cxx
+++ b/winaccessibility/source/UAccCOM/AccText.cxx
@@ -272,7 +272,7 @@ STDMETHODIMP CAccText::scrollSubstringTo(long startIndex, long endIndex,enum IA2
    * @param pXInterface UNO interface.
    * @return Result.
 */
-STDMETHODIMP CAccText::put_XInterface(long pXInterface)
+STDMETHODIMP CAccText::put_XInterface(hyper pXInterface)
 {
 
     return CAccTextBase::put_XInterface(pXInterface);
diff --git a/winaccessibility/source/UAccCOM/AccText.h b/winaccessibility/source/UAccCOM/AccText.h
index f8c54b3..f0adb97 100644
--- a/winaccessibility/source/UAccCOM/AccText.h
+++ b/winaccessibility/source/UAccCOM/AccText.h
@@ -131,7 +131,7 @@ public:
     STDMETHOD(get_oldText)( IA2TextSegment *oldText);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
 };
 
diff --git a/winaccessibility/source/UAccCOM/AccTextBase.cxx b/winaccessibility/source/UAccCOM/AccTextBase.cxx
index 6e45ff0..86968e3 100644
--- a/winaccessibility/source/UAccCOM/AccTextBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccTextBase.cxx
@@ -936,7 +936,7 @@ STDMETHODIMP CAccTextBase::scrollSubstringTo(long, long, IA2ScrollType)
    * @param pXInterface UNO interface.
    * @return Result.
 */
-STDMETHODIMP CAccTextBase::put_XInterface(long pXInterface)
+STDMETHODIMP CAccTextBase::put_XInterface(hyper pXInterface)
 {
 
     CHECK_ENABLE_INF
diff --git a/winaccessibility/source/UAccCOM/AccTextBase.h b/winaccessibility/source/UAccCOM/AccTextBase.h
index 8494936..e320b44 100644
--- a/winaccessibility/source/UAccCOM/AccTextBase.h
+++ b/winaccessibility/source/UAccCOM/AccTextBase.h
@@ -103,7 +103,7 @@ public:
     STDMETHOD(scrollSubstringToPoint)(long startIndex, long endIndex,enum IA2CoordinateType coordinateType, long x, long y );
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
 private:
 
diff --git a/winaccessibility/source/UAccCOM/AccValue.cxx b/winaccessibility/source/UAccCOM/AccValue.cxx
index 608a559..45218cb 100644
--- a/winaccessibility/source/UAccCOM/AccValue.cxx
+++ b/winaccessibility/source/UAccCOM/AccValue.cxx
@@ -196,7 +196,7 @@ STDMETHODIMP CAccValue::get_minimumValue(VARIANT *mininumValue)
    * @param  pXInterface UNO interface.
    * @return Result.
    */
-STDMETHODIMP CAccValue::put_XInterface(long pXInterface)
+STDMETHODIMP CAccValue::put_XInterface(hyper pXInterface)
 {
 
 
diff --git a/winaccessibility/source/UAccCOM/AccValue.h b/winaccessibility/source/UAccCOM/AccValue.h
index 3c61f30..bf385be 100644
--- a/winaccessibility/source/UAccCOM/AccValue.h
+++ b/winaccessibility/source/UAccCOM/AccValue.h
@@ -86,7 +86,7 @@ public:
     STDMETHOD(get_minimumValue)(VARIANT *mininumValue);
 
     // Overide of IUNOXWrapper.
-    STDMETHOD(put_XInterface)(long pXInterface);
+    STDMETHOD(put_XInterface)(hyper pXInterface);
 
 private:
 
diff --git a/winaccessibility/source/UAccCOM/EnumVariant.cxx b/winaccessibility/source/UAccCOM/EnumVariant.cxx
index 418de1d..0eaa486 100644
--- a/winaccessibility/source/UAccCOM/EnumVariant.cxx
+++ b/winaccessibility/source/UAccCOM/EnumVariant.cxx
@@ -58,7 +58,8 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Next(ULONG cElements,VARIANT __RPC_FAR *
     {
         Reference< XAccessible > pRXAcc = m_pXAccessibleSelection->getSelectedAccessibleChild(l1);
         IAccessible* pChild = NULL;
-        BOOL isGet = CMAccessible::get_IAccessibleFromXAccessible((long)pRXAcc.get(),&pChild);
+        BOOL isGet = CMAccessible::get_IAccessibleFromXAccessible(pRXAcc.get(),
+                        &pChild);
         if(isGet)
         {
             pvar[l2].vt = VT_I4;
@@ -68,7 +69,8 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Next(ULONG cElements,VARIANT __RPC_FAR *
         {
             if(CMAccessible::g_pAgent)
                 CMAccessible::g_pAgent->InsertAccObj(pRXAcc.get(),pUNOInterface,NULL);
-            BOOL isGet = CMAccessible::get_IAccessibleFromXAccessible((long)pRXAcc.get(),&pChild);
+            BOOL isGet = CMAccessible::get_IAccessibleFromXAccessible(
+                            pRXAcc.get(), &pChild);
             if(isGet)
             {
                 pvar[l2].vt = VT_I4;
@@ -135,7 +137,7 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Clone(IEnumVARIANT __RPC_FAR *__RPC_FAR
     hr = Create(&penum);
     if( hr == S_OK )
     {
-        penum->PutSelection((long)pUNOInterface);
+        penum->PutSelection(reinterpret_cast<hyper>(pUNOInterface));
         *ppenum = penum;
     }
     else
@@ -221,9 +223,9 @@ static Reference<XAccessibleSelection> GetXAccessibleSelection(XAccessible* pXAc
    * @param pXSelection XAccessible interface.
    * @return Result..
    */
-STDMETHODIMP CEnumVariant::PutSelection(long pXSelection)
+STDMETHODIMP CEnumVariant::PutSelection(hyper pXSelection)
 {
-    pUNOInterface = (XAccessible*)pXSelection;
+    pUNOInterface = reinterpret_cast<XAccessible*>(pXSelection);
     m_pXAccessibleSelection = GetXAccessibleSelection(pUNOInterface);
     return S_OK;
 }
diff --git a/winaccessibility/source/UAccCOM/EnumVariant.h b/winaccessibility/source/UAccCOM/EnumVariant.h
index f584b96..0a87a3f 100644
--- a/winaccessibility/source/UAccCOM/EnumVariant.h
+++ b/winaccessibility/source/UAccCOM/EnumVariant.h
@@ -77,7 +77,7 @@ public:
     // IEnumVariant
 
     //
-    HRESULT STDMETHODCALLTYPE PutSelection(long pXSelection);
+    HRESULT STDMETHODCALLTYPE PutSelection(hyper pXSelection);
 
     //
     static HRESULT STDMETHODCALLTYPE Create(CEnumVariant __RPC_FAR *__RPC_FAR *ppenum);
diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx
index 1030a5c1..8998ec9 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.cxx
+++ b/winaccessibility/source/UAccCOM/MAccessible.cxx
@@ -1335,9 +1335,9 @@ STDMETHODIMP CMAccessible::Put_XAccChildID(long dChildID)
 * @param    pAgent, the AccObjectManagerAgent point.
 * @return   S_OK if successful and E_FAIL if failure.
 */
-STDMETHODIMP CMAccessible::Put_XAccAgent(long pAgent)
+STDMETHODIMP CMAccessible::Put_XAccAgent(hyper pAgent)
 {
-    g_pAgent = (AccObjectManagerAgent*)pAgent;
+    g_pAgent = reinterpret_cast<AccObjectManagerAgent*>(pAgent);
     return S_OK;
 }
 
@@ -1390,12 +1390,13 @@ IMAccessible* CMAccessible::GetChildInterface(long dChildID)//for test
 
         IAccessible* pChild = NULL;
         Reference< XAccessible > pXChild = pRContext->getAccessibleChild(dChildID-1);
-        BOOL isGet = get_IAccessibleFromXAccessible((long)pXChild.get(),&pChild);
+        BOOL isGet = get_IAccessibleFromXAccessible(pXChild.get(), &pChild);
 
         if(!isGet)
         {
-            g_pAgent->InsertAccObj(pXChild.get(),pUNOInterface,(long)m_hwnd);
-            isGet = get_IAccessibleFromXAccessible((long)pXChild.get(),&pChild);
+            g_pAgent->InsertAccObj(pXChild.get(), pUNOInterface,
+                    reinterpret_cast<sal_Int64>(m_hwnd));
+            isGet = get_IAccessibleFromXAccessible(pXChild.get(), &pChild);
         }
 
         if(isGet)
@@ -1460,7 +1461,7 @@ IMAccessible* CMAccessible::GetNavigateChildForDM(VARIANT varCur, short flags)
         {
             return NULL;
         }
-        pCurChild->GetUNOInterface((long*)&pChildXAcc);
+        pCurChild->GetUNOInterface(reinterpret_cast<hyper*>(&pChildXAcc));
         if(pChildXAcc==NULL)
         {
             return NULL;
@@ -1728,7 +1729,8 @@ STDMETHODIMP CMAccessible::get_relation( long relationIndex, IAccessibleRelation
                 if(SUCCEEDED(hr))
                 {
                     AccessibleRelation accRelation = pRrelationSet->getRelation(relationIndex);
-                    wrapper->put_XSubInterface((long)&accRelation);
+                    wrapper->put_XSubInterface(
+                            reinterpret_cast<hyper>(&accRelation));
                     wrapper->Release();
                     *relation = pRelation;
                     return S_OK;
@@ -1790,7 +1792,8 @@ STDMETHODIMP CMAccessible::get_relations( long, IAccessibleRelation __RPC_FAR *_
                 if(SUCCEEDED(hr))
                 {
                     AccessibleRelation accRelation = pRrelationSet->getRelation(i);
-                    wrapper->put_XSubInterface((long)&accRelation);
+                    wrapper->put_XSubInterface(
+                            reinterpret_cast<hyper>(&accRelation));
                     wrapper->Release();
                 }
                 (relation)[i] = pRelation;
@@ -2268,11 +2271,12 @@ HRESULT CMAccessible::DeSelectMutipleChildren( XAccessible** pItem,int size )
 * @param    pXAcc, the XAccessible object of current object.
 * @return  S_OK if successful.
 */
-STDMETHODIMP CMAccessible::SetXAccessible(long pXAcc)
+STDMETHODIMP CMAccessible::SetXAccessible(hyper pXAcc)
 {
-    pUNOInterface = (XAccessible*)pXAcc;
+    pUNOInterface = reinterpret_cast<XAccessible*>(pXAcc);
     pRef = pUNOInterface;
-    m_pEnumVar->PutSelection(/*XAccessibleSelection*/(long)pUNOInterface);
+    m_pEnumVar->PutSelection(/*XAccessibleSelection*/
+            reinterpret_cast<hyper>(pUNOInterface));
 
     pRContext = pUNOInterface->getAccessibleContext();
     pRContextInterface = (XAccessibleContext*)pRContext.is();
@@ -2327,13 +2331,13 @@ STDMETHODIMP CMAccessible::accSelect(long flagsSelect, VARIANT varChild)
 
     if( flagsSelect&SELFLAG_TAKEFOCUS )
     {
-        long pTempUNO = 0;
-        pSelectAcc->GetUNOInterface( &pTempUNO);
+        XAccessible * pTempUNO = 0;
+        pSelectAcc->GetUNOInterface(reinterpret_cast<hyper*>(&pTempUNO));
 
         if( pTempUNO == NULL )
             return NULL;
 
-        Reference< XAccessibleContext > pRContext = ( (XAccessible*)pTempUNO)->getAccessibleContext();
+        Reference<XAccessibleContext> pRContext = pTempUNO->getAccessibleContext();
         Reference< XAccessibleComponent > pRComponent(pRContext,UNO_QUERY);
         Reference< XAccessible > pRParentXAcc = pRContext->getAccessibleParent();
         Reference< XAccessibleContext > pRParentContext = pRParentXAcc->getAccessibleContext();
@@ -2383,13 +2387,13 @@ STDMETHODIMP CMAccessible::accSelect(long flagsSelect, VARIANT varChild)
 * @param pXAcc, [in, out] the Uno interface of the current object.
 * @return S_OK if successful.
 */
-STDMETHODIMP CMAccessible::GetUNOInterface(long* pXAcc)
+STDMETHODIMP CMAccessible::GetUNOInterface(hyper * pXAcc)
 {
     // #CHECK#
     if(pXAcc == NULL)
         return E_INVALIDARG;
 
-    *pXAcc = (long)pUNOInterface;
+    *pXAcc = reinterpret_cast<hyper>(pUNOInterface);
     return S_OK;
 }
 
@@ -2398,9 +2402,9 @@ STDMETHODIMP CMAccessible::GetUNOInterface(long* pXAcc)
 * @param pAction, the default action point of the current object.
 * @return S_OK if successful.
 */
-STDMETHODIMP CMAccessible::SetDefaultAction(long pAction)
+STDMETHODIMP CMAccessible::SetDefaultAction(hyper pAction)
 {
-    m_pXAction = (XAccessibleAction*)pAction;
+    m_pXAction = reinterpret_cast<XAccessibleAction*>(pAction);
     return S_OK;
 }
 
@@ -2590,7 +2594,8 @@ HRESULT WINAPI CMAccessible::SmartQI(void* pv, REFIID iid, void** ppvObject)
                     ((IUnknown*)*ppvObject)->QueryInterface(IID_IUNOXWrapper, (void**)&wrapper);
                     if(wrapper)
                     {
-                        wrapper->put_XInterface((long)pUNOInterface);
+                        wrapper->put_XInterface(
+                                reinterpret_cast<hyper>(pUNOInterface));
                         wrapper->Release();
                     }
                     return S_OK;
@@ -2605,7 +2610,8 @@ HRESULT WINAPI CMAccessible::SmartQI(void* pv, REFIID iid, void** ppvObject)
     LEAVE_PROTECTED_BLOCK
 }
 
-BOOL CMAccessible::get_IAccessibleFromXAccessible(long pXAcc, IAccessible **ppIA)
+BOOL
+CMAccessible::get_IAccessibleFromXAccessible(XAccessible * pXAcc, IAccessible **ppIA)
 {
 
     ENTER_PROTECTED_BLOCK
@@ -2617,7 +2623,7 @@ BOOL CMAccessible::get_IAccessibleFromXAccessible(long pXAcc, IAccessible **ppIA
         }
         BOOL isGet = FALSE;
         if(g_pAgent)
-            isGet = g_pAgent->GetIAccessibleFromXAccessible((XAccessible*)pXAcc,ppIA);
+            isGet = g_pAgent->GetIAccessibleFromXAccessible(pXAcc, ppIA);
 
         if(isGet)
             return TRUE;
@@ -2958,12 +2964,12 @@ void CMAccessible::ConvertAnyToVariant(const ::com::sun::star::uno::Any &rAnyVal
                     if(pXAcc.is())
                     {
                         IAccessible* pIAcc = NULL;
-                        get_IAccessibleFromXAccessible((long)pXAcc.get(), &pIAcc);
+                        get_IAccessibleFromXAccessible(pXAcc.get(), &pIAcc);
                         if(pIAcc == NULL)
                         {
                             Reference< XAccessibleContext > pXAccContext = pXAcc->getAccessibleContext();
                             g_pAgent->InsertAccObj(pXAcc.get(),pXAccContext->getAccessibleParent().get());
-                            get_IAccessibleFromXAccessible((long)pXAcc.get(), &pIAcc);
+                            get_IAccessibleFromXAccessible(pXAcc.get(), &pIAcc);
                         }
                         if(pIAcc)
                         {
diff --git a/winaccessibility/source/UAccCOM/MAccessible.h b/winaccessibility/source/UAccCOM/MAccessible.h
index 7d8399f..def1171 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.h
+++ b/winaccessibility/source/UAccCOM/MAccessible.h
@@ -195,12 +195,12 @@ public:
     STDMETHOD(Put_XAccParent)(IMAccessible __RPC_FAR *pIParent);
     STDMETHOD(Put_XAccWindowHandle)(HWND hwnd);
     STDMETHOD(Put_XAccChildID)(long dChildID);
-    STDMETHOD(Put_XAccAgent)(long pAgent);
+    STDMETHOD(Put_XAccAgent)(hyper pAgent);
     STDMETHOD(NotifyDestroy)(BOOL isDestroy);
     STDMETHOD(Put_ActionDescription)( const OLECHAR* szAction);
-    STDMETHOD(SetDefaultAction)(long pAction);
-    STDMETHOD(GetUNOInterface)(long*);
-    STDMETHOD(SetXAccessible)(long);
+    STDMETHOD(SetDefaultAction)(hyper pAction);
+    STDMETHOD(GetUNOInterface)(hyper*);
+    STDMETHOD(SetXAccessible)(hyper);
 
 private:
     OLECHAR* m_pszName;
@@ -270,7 +270,8 @@ public:
     // implement some specific MSAA methods,such as accSelection,accNavigate
     static AccObjectManagerAgent* g_pAgent;
 
-    static BOOL get_IAccessibleFromXAccessible(long pXAcc,IAccessible** ppIA);
+    static BOOL get_IAccessibleFromXAccessible(
+            css::accessibility::XAccessible * pXAcc, IAccessible** ppIA);
     BOOL m_bRequiresSave;
     XGUIDToComObjHash m_containedObjects;
 
diff --git a/winaccessibility/source/UAccCOM/UNOXWrapper.h b/winaccessibility/source/UAccCOM/UNOXWrapper.h
index 8787b94..4dd7a07 100644
--- a/winaccessibility/source/UAccCOM/UNOXWrapper.h
+++ b/winaccessibility/source/UAccCOM/UNOXWrapper.h
@@ -38,24 +38,24 @@ public:
 public:
     // IUNOXWrapper
 
-    STDMETHOD(put_XInterface)(long pXInterface)
+    STDMETHOD(put_XInterface)(hyper pXInterface)
     {
         pUNOInterface = (com::sun::star::accessibility::XAccessible*)pXInterface;
         return S_OK;
     }
 
-    STDMETHOD(put_XSubInterface)(long)
+    STDMETHOD(put_XSubInterface)(hyper)
     {
         return S_OK;
     }
 
-    STDMETHOD(get_XInterface)(/*[out,retval]*/long *pXInterface)
+    STDMETHOD(get_XInterface)(/*[out,retval]*/hyper *pXInterface)
     {
-        *pXInterface = (long)pUNOInterface;//.get();
+        *pXInterface = reinterpret_cast<hyper>(pUNOInterface);
         return S_OK;
     }
 
-    STDMETHOD(get_XSubInterface)(/*[out,retval]*/long *)
+    STDMETHOD(get_XSubInterface)(/*[out,retval]*/hyper *)
     {
         return S_OK;
     }
diff --git a/winaccessibility/source/UAccCOMIDL/UAccCOM.idl b/winaccessibility/source/UAccCOMIDL/UAccCOM.idl
index f7cfeb5..4d5da88 100644
--- a/winaccessibility/source/UAccCOMIDL/UAccCOM.idl
+++ b/winaccessibility/source/UAccCOMIDL/UAccCOM.idl
@@ -43,11 +43,11 @@ import "defines.idl";
         [id(10), helpstring("method Put_XAccParent")] HRESULT Put_XAccParent(IMAccessible* pIParent);
         [id(13), helpstring("method Put_XAccWindowHandle")] HRESULT Put_XAccWindowHandle(HWND hwnd);
         [id(14), helpstring("method Put_XAccChildID")] HRESULT Put_XAccChildID(long dChildID);
-        [id(19), helpstring("method SetXAccessible")] HRESULT SetXAccessible( long XAccessible);
-        [id(20), helpstring("method GetUNOInterface")] HRESULT GetUNOInterface(long* UNOInterface);
-        [id(23), helpstring("method SetDefaultAction")] HRESULT SetDefaultAction(long pAction);
+        [id(19), helpstring("method SetXAccessible")] HRESULT SetXAccessible(hyper XAccessible);
+        [id(20), helpstring("method GetUNOInterface")] HRESULT GetUNOInterface(hyper* UNOInterface);
+        [id(23), helpstring("method SetDefaultAction")] HRESULT SetDefaultAction(hyper pAction);
         [id(24), helpstring("method Put_ActionDescription")] HRESULT Put_ActionDescription( const OLECHAR* szAction);
-        [id(25), helpstring("method Put_XAccAgent")] HRESULT Put_XAccAgent(long pAgent);
+        [id(25), helpstring("method Put_XAccAgent")] HRESULT Put_XAccAgent(hyper pAgent);
         [id(26), helpstring("method NotifyDestroy")] HRESULT NotifyDestroy(BOOL isDestroy);
         [id(30), helpstring("method Get_XAccChildID")] HRESULT Get_XAccChildID([out,retval] long* childID);
     };
@@ -61,7 +61,7 @@ import "defines.idl";
     interface IEnumVariant : IEnumVARIANT
     {
         [id(1), helpstring("method ClearEnumeration")] HRESULT ClearEnumeration();
-        [id(2), helpstring("method PutSelection")] HRESULT PutSelection(long pXSeletion);
+        [id(2), helpstring("method PutSelection")] HRESULT PutSelection(hyper pXSeletion);
     };
     [
         object,
@@ -72,10 +72,10 @@ import "defines.idl";
     ]
     interface IUNOXWrapper : IUnknown
     {
-        [id(1), helpstring("method put_XInterface")] HRESULT put_XInterface(long pXInterface);
-        [id(2), helpstring("method put_XSubInterface")] HRESULT put_XSubInterface(long pXSubInterface);
-        [id(3), helpstring("method get_XInterface")] HRESULT get_XInterface([out,retval]long* pXInterface);
-        [id(4), helpstring("method get_XSubInterface")] HRESULT get_XSubInterface([out,retval]long* pXSubInterface);
+        [id(1), helpstring("method put_XInterface")] HRESULT put_XInterface(hyper pXInterface);
+        [id(2), helpstring("method put_XSubInterface")] HRESULT put_XSubInterface(hyper pXSubInterface);
+        [id(3), helpstring("method get_XInterface")] HRESULT get_XInterface([out,retval]hyper* pXInterface);
+        [id(4), helpstring("method get_XSubInterface")] HRESULT get_XSubInterface([out,retval]hyper * pXSubInterface);
     };
 
 [
diff --git a/winaccessibility/source/service/AccObject.cxx b/winaccessibility/source/service/AccObject.cxx
index c9d4a05..db75660 100644
--- a/winaccessibility/source/service/AccObject.cxx
+++ b/winaccessibility/source/service/AccObject.cxx
@@ -161,9 +161,9 @@ AccObject::AccObject(XAccessible* pAcc, AccObjectManagerAgent* pAgent,
     m_accRole = m_xAccContextRef -> getAccessibleRole();
     if( m_pIMAcc )
     {
-        m_pIMAcc->SetXAccessible((long) m_xAccRef.get());
-        m_pIMAcc->Put_XAccAgent((long)pAgent);
-        m_pIMAcc->SetDefaultAction((long)m_xAccActionRef.get());
+        m_pIMAcc->SetXAccessible(reinterpret_cast<hyper>(m_xAccRef.get()));
+        m_pIMAcc->Put_XAccAgent(reinterpret_cast<hyper>(pAgent));
+        m_pIMAcc->SetDefaultAction(reinterpret_cast<hyper>(m_xAccActionRef.get()));
     }
 }
 /**
@@ -317,7 +317,8 @@ void  AccObject::UpdateAction()
         if( m_xAccActionRef->getAccessibleActionCount() > 0 )
         {
             UpdateDefaultAction( );
-            m_pIMAcc->SetDefaultAction((long)m_xAccActionRef.get());
+            m_pIMAcc->SetDefaultAction(
+                    reinterpret_cast<hyper>(m_xAccActionRef.get()));
         }
     }
 }
commit 8530048bb52d1617678958b07a0bb2946507259d
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Nov 20 20:54:46 2013 +0100

    winaccessibility: use sal_Int64 for pointers in AccObjectManagerAgent
    
    Also use bool instead of random integer types.
    
    Change-Id: If4da5f6b7986231312438142c9ea953d761c6745

diff --git a/winaccessibility/inc/AccObjectManagerAgent.hxx b/winaccessibility/inc/AccObjectManagerAgent.hxx
index 91c407d..fd61c40 100644
--- a/winaccessibility/inc/AccObjectManagerAgent.hxx
+++ b/winaccessibility/inc/AccObjectManagerAgent.hxx
@@ -44,19 +44,19 @@ public:
     AccObjectManagerAgent();
     virtual ~AccObjectManagerAgent();
 
-    virtual unsigned char InsertAccObj( com::sun::star::accessibility::XAccessible* pXAcc,
-                                        com::sun::star::accessibility::XAccessible* pParentXAcc,
-                                        long pWnd=0);
+    virtual bool InsertAccObj(com::sun::star::accessibility::XAccessible* pXAcc,
+                              com::sun::star::accessibility::XAccessible* pParentXAcc,
+                              sal_Int64 pWnd=0);
     virtual void GetIAccessibleFromResID(long childID,IMAccessible**);
-    virtual unsigned char GetIAccessibleFromXAccessible(com::sun::star::accessibility::XAccessible* pXAcc, IAccessible** ppIA);
+    virtual bool GetIAccessibleFromXAccessible(com::sun::star::accessibility::XAccessible* pXAcc, IAccessible** ppIA);
 
     virtual void DeleteAccObj( com::sun::star::accessibility::XAccessible* pXAcc );
     virtual IMAccessible*  GetIMAccByXAcc(com::sun::star::accessibility::XAccessible* pXAcc);
 
-    unsigned char NotifyAccEvent( short pEvent = 0, com::sun::star::accessibility::XAccessible* pXAcc = 0 );
+    bool NotifyAccEvent(short pEvent = 0, com::sun::star::accessibility::XAccessible* pXAcc = 0);
 
-    unsigned char InsertChildrenAccObj( com::sun::star::accessibility::XAccessible* pXAcc,
-                                        long pWnd=0);
+    bool InsertChildrenAccObj(com::sun::star::accessibility::XAccessible* pXAcc,
+                              sal_Int64 pWnd=0);
     void DeleteChildrenAccObj( com::sun::star::accessibility::XAccessible* pXAcc );
 
     void  DecreaseState( com::sun::star::accessibility::XAccessible* pXAcc,unsigned short pState );
@@ -81,9 +81,10 @@ public:
     com::sun::star::accessibility::XAccessible* GetParentXAccessible(
         com::sun::star::accessibility::XAccessible* pXAcc );
     short GetParentRole(com::sun::star::accessibility::XAccessible* pXAcc );
-    unsigned short IsContainer(com::sun::star::accessibility::XAccessible* pXAcc);
+    bool IsContainer(com::sun::star::accessibility::XAccessible* pXAcc);
 
-    void SaveTopWindowHandle(long hWnd, com::sun::star::accessibility::XAccessible* pXAcc);
+    void SaveTopWindowHandle(sal_Int64 hWnd,
+            com::sun::star::accessibility::XAccessible* pXAcc);
 
     void UpdateChildState(com::sun::star::accessibility::XAccessible* pXAcc);
 
diff --git a/winaccessibility/source/service/AccObjectManagerAgent.cxx b/winaccessibility/source/service/AccObjectManagerAgent.cxx
index b14c52b..1c76360 100644
--- a/winaccessibility/source/service/AccObjectManagerAgent.cxx
+++ b/winaccessibility/source/service/AccObjectManagerAgent.cxx
@@ -140,12 +140,14 @@ void  AccObjectManagerAgent::UpdateDescription( XAccessible* pXAcc, Any newDesc
    * @param pWnd The top window handle containing control.
    * @return If the method is correctly processed.
    */
-unsigned char AccObjectManagerAgent::InsertAccObj( XAccessible* pXAcc,XAccessible* pParentXAcc,long pWnd)
+bool AccObjectManagerAgent::InsertAccObj(
+        XAccessible* pXAcc, XAccessible* pParentXAcc, sal_Int64 nWnd)
 {
     if( pWinManager )
-        return (unsigned char)pWinManager->InsertAccObj( pXAcc, pParentXAcc,HWND((void*)pWnd) );
+        return pWinManager->InsertAccObj(pXAcc, pParentXAcc,
+                static_cast<HWND>(reinterpret_cast<void*>(nWnd)));
 
-    return sal_False;
+    return false;
 }
 
 /**
@@ -154,10 +156,12 @@ unsigned char AccObjectManagerAgent::InsertAccObj( XAccessible* pXAcc,XAccessibl
    * @param pXAcc XAccessible interface for top window
    * @return void
    */
-void AccObjectManagerAgent::SaveTopWindowHandle(long hWnd, com::sun::star::accessibility::XAccessible* pXAcc)
+void
+AccObjectManagerAgent::SaveTopWindowHandle(sal_Int64 hWnd, XAccessible* pXAcc)
 {
     if( pWinManager )
-        pWinManager->SaveTopWindowHandle( HWND((void*)hWnd), pXAcc );
+        pWinManager->SaveTopWindowHandle(
+                static_cast<HWND>(reinterpret_cast<void*>(hWnd)), pXAcc);
 }
 
 
@@ -168,13 +172,13 @@ void AccObjectManagerAgent::SaveTopWindowHandle(long hWnd, com::sun::star::acces
    * @param pWnd The top window handle containing control.
    * @return If the method is correctly processed.
    */
-unsigned char AccObjectManagerAgent::InsertChildrenAccObj( XAccessible* pXAcc,
-        long pWnd)
+bool
+AccObjectManagerAgent::InsertChildrenAccObj(XAccessible* pXAcc, sal_Int64 pWnd)
 {
     if( pWinManager )
-        return (unsigned char)pWinManager->InsertChildrenAccObj( pXAcc, HWND((void*)pWnd) );
+        return pWinManager->InsertChildrenAccObj( pXAcc, HWND((void*)pWnd) );
 
-    return sal_False;
+    return false;
 }
 
 /**
@@ -241,12 +245,12 @@ void  AccObjectManagerAgent::UpdateState( com::sun::star::accessibility::XAccess
    * @param pEvent UNO event ID.
    * @return If the method is correctly processed.
    */
-unsigned char AccObjectManagerAgent::NotifyAccEvent( short pEvent,XAccessible* pXAcc )
+bool AccObjectManagerAgent::NotifyAccEvent(short pEvent, XAccessible* pXAcc)
 {
     if(pWinManager)
-        return (unsigned char)pWinManager->NotifyAccEvent(pXAcc,pEvent);
+        return pWinManager->NotifyAccEvent(pXAcc,pEvent);
 
-    return sal_False;
+    return false;
 }
 
 /**
@@ -254,12 +258,12 @@ unsigned char AccObjectManagerAgent::NotifyAccEvent( short pEvent,XAccessible* p
    * @param pXAcc Uno XAccessible interface of control.
    * @return If the method is correctly processed.
    */
-unsigned short AccObjectManagerAgent::IsContainer( XAccessible* pXAcc )
+bool AccObjectManagerAgent::IsContainer( XAccessible* pXAcc )
 {
     if(pWinManager)
-        return (unsigned char)pWinManager->IsContainer(pXAcc);
+        return pWinManager->IsContainer(pXAcc);
 
-    return sal_False;
+    return false;
 }
 
 /**
@@ -302,15 +306,16 @@ void AccObjectManagerAgent::GetIAccessibleFromResID(long childID,IMAccessible**
    * @param pXAcc Uno XAccessible interface of control.
    * @return Com interface.
    */
-unsigned char AccObjectManagerAgent::GetIAccessibleFromXAccessible(XAccessible* pXAcc, IAccessible** ppXI)
+bool AccObjectManagerAgent::GetIAccessibleFromXAccessible(
+        XAccessible* pXAcc, IAccessible** ppXI)
 {
     if(pWinManager)
     {
         *ppXI = (IAccessible*)pWinManager->GetIMAccByXAcc(pXAcc);
         if(*ppXI)
-            return sal_True;
+            return true;
     }
-    return sal_False;
+    return false;
 }
 
 XAccessible* AccObjectManagerAgent::GetParentXAccessible( XAccessible* pXAcc )
@@ -335,14 +340,14 @@ void AccObjectManagerAgent::UpdateDescription( XAccessible* pXAcc )
         pWinManager->UpdateDescription( pXAcc );
 }
 
-void AccObjectManagerAgent::UpdateChildState(com::sun::star::accessibility::XAccessible* pXAcc)
+void AccObjectManagerAgent::UpdateChildState(XAccessible* pXAcc)
 {
     if(pWinManager)
         pWinManager->UpdateChildState( pXAcc );
 }
 
 
-bool AccObjectManagerAgent::IsSpecialToolboItem(com::sun::star::accessibility::XAccessible* pXAcc)
+bool AccObjectManagerAgent::IsSpecialToolboItem(XAccessible* pXAcc)
 {
     if(pWinManager)
         return pWinManager->IsSpecialToolboItem( pXAcc );
@@ -350,7 +355,7 @@ bool AccObjectManagerAgent::IsSpecialToolboItem(com::sun::star::accessibility::X
     return false;
 }
 
-short AccObjectManagerAgent::GetRole(com::sun::star::accessibility::XAccessible* pXAcc)
+short AccObjectManagerAgent::GetRole(XAccessible* pXAcc)
 {
     if(pWinManager)
         return pWinManager->GetRole( pXAcc );
@@ -366,7 +371,7 @@ XAccessible* AccObjectManagerAgent::GetAccDocByAccTopWin( XAccessible* pXAcc )
     }
     return NULL;
 }
-bool AccObjectManagerAgent::IsTopWinAcc( com::sun::star::accessibility::XAccessible* pXAcc )
+bool AccObjectManagerAgent::IsTopWinAcc(XAccessible* pXAcc)
 {
     if (pWinManager)
     {
@@ -375,12 +380,12 @@ bool AccObjectManagerAgent::IsTopWinAcc( com::sun::star::accessibility::XAccessi
     return NULL;
 }
 
-bool AccObjectManagerAgent::IsStateManageDescendant(com::sun::star::accessibility::XAccessible* pXAcc)
+bool AccObjectManagerAgent::IsStateManageDescendant(XAccessible* pXAcc)
 {
     if(pWinManager)
         return pWinManager->IsStateManageDescendant( pXAcc );
 
-    return sal_False;
+    return false;
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit c70fd83a916770d068e2278c0e6f105826178858
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Nov 20 20:27:11 2013 +0100

    winaccessibility: clean up global TopLevelWindowListener
    
    Apparently the life-cycle of this global variable is tied to the
    MSAAService anyway, so just make it a member of that.
    Also it appears that the FreeTopListener function would call release()
    but at the place where the global variable is assigned acquire() was
    missing.  Using a rtl::Reference should fix this up too.
    
    Change-Id: I6dd305dfd990d7fd4c54b16d971700b88470dc43

diff --git a/winaccessibility/inc/g_msacc.hxx b/winaccessibility/inc/g_msacc.hxx
index 9f851bf..b9670cf 100644
--- a/winaccessibility/inc/g_msacc.hxx
+++ b/winaccessibility/inc/g_msacc.hxx
@@ -20,12 +20,8 @@
 #ifndef __G_MSACC_HXX
 #define __G_MSACC_HXX
 
-extern void FreeTopWindowListener();
-extern void handleWindowOpened_impl(sal_Int64 pAcc);
 extern sal_Int64 GetMSComPtr(sal_Int64 hWnd, sal_Int64 lParam, sal_Int64 wParam);
 
-extern AccTopWindowListener* g_pTop;
-
 #endif
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/winaccessibility/source/service/AccTopWindowListener.cxx b/winaccessibility/source/service/AccTopWindowListener.cxx
index 7900bf6..a463ca4 100644
--- a/winaccessibility/source/service/AccTopWindowListener.cxx
+++ b/winaccessibility/source/service/AccTopWindowListener.cxx
@@ -44,29 +44,6 @@ using namespace com::sun::star::awt;
 using namespace rtl;
 using namespace cppu;
 
-AccTopWindowListener* g_pTop = NULL;
-
-//when proccess exit, call FreeTopWindowListener() in svmain
-void FreeTopWindowListener()
-{
-    if( g_pTop )
-    {
-        g_pTop->release();
-        g_pTop = NULL;
-    }
-}
-
-/**
- *  As a global method to invoke the handleWindowOpened() method
- */
-void handleWindowOpened_impl(sal_Int64 pAcc)
-{
-    if( g_pTop && pAcc != 0 )
-        g_pTop->HandleWindowOpened(
-            static_cast<com::sun::star::accessibility::XAccessible*>(
-                reinterpret_cast<void*>(pAcc)));
-}
-
 /**
  *  For the new opened window, generate all the UNO accessible's object, COM object and add
  *  accessible listener to monitor all these objects.
diff --git a/winaccessibility/source/service/msaaservice_impl.cxx b/winaccessibility/source/service/msaaservice_impl.cxx
index b68efde..ff3b017 100644
--- a/winaccessibility/source/service/msaaservice_impl.cxx
+++ b/winaccessibility/source/service/msaaservice_impl.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <rtl/ref.hxx>
 #include <cppuhelper/implbase4.hxx>
 #include <cppuhelper/factory.hxx>
 #include <cppuhelper/implementationentry.hxx>
@@ -35,7 +36,6 @@
 #include <windows.h>
 #include <postwin.h>
 
-using namespace ::rtl; // for OUString
 using namespace ::com::sun::star; // for odk interfaces
 using namespace ::com::sun::star::uno; // for basic types
 using namespace ::com::sun::star::accessibility;
@@ -64,12 +64,13 @@ class MSAAServiceImpl : public ::cppu::WeakImplHelper4<
             XMSAAService, lang::XServiceInfo,
             lang::XInitialization, lang::XComponent >
 {
+private:
+    rtl::Reference<AccTopWindowListener> m_pTopWindowListener;
     OUString m_arg;
+
 public:
-    // focus on four interfaces,
-    // no need to implement XInterface, XTypeProvider, XWeak etc.
     MSAAServiceImpl ();
-    virtual ~MSAAServiceImpl( void );
+    virtual ~MSAAServiceImpl();
 
     // XInitialization will be called upon createInstanceWithArguments[AndContext]()
     virtual void SAL_CALL initialize( Sequence< Any > const & args ) throw (Exception);
@@ -133,7 +134,13 @@ void MSAAServiceImpl::handleWindowOpened(sal_Int64 nAcc)
     SolarMutexGuard g;
 
     SAL_INFO( "iacc2", "Window opened " << nAcc );
-    handleWindowOpened_impl( nAcc );
+
+    if (m_pTopWindowListener.is() && nAcc)
+    {
+        m_pTopWindowListener->HandleWindowOpened(
+            static_cast<com::sun::star::accessibility::XAccessible*>(
+                reinterpret_cast<void*>(nAcc)));
+    }
 }
 
 OUString MSAAServiceImpl::getImplementationName() throw (RuntimeException)
@@ -221,7 +228,8 @@ static void AccessBridgeHandleExistingWindow(const Reference< XMSAAService > &xA
         assert( xAccMgr.is() );
         if ( xAccessible.is() )
         {
-            xAccMgr->handleWindowOpened( (long)xAccessible.get() );
+            xAccMgr->handleWindowOpened(
+                    reinterpret_cast<sal_Int64>(xAccessible.get()));
             SAL_INFO( "iacc2", "Decide whether to register existing window with IAccessible2" );
         }
     }
@@ -300,8 +308,8 @@ MSAAServiceImpl::MSAAServiceImpl()
 
     if( xToolkit.is() )
     {
-        g_pTop = new AccTopWindowListener();
-        Reference< XTopWindowListener> xRef( g_pTop );
+        m_pTopWindowListener.set(new AccTopWindowListener());
+        Reference<XTopWindowListener> const xRef(m_pTopWindowListener.get());
         xToolkit->addTopWindowListener( xRef );
         SAL_INFO( "iacc2", "successfully connected to the toolkit event hose" );
     }
@@ -323,7 +331,7 @@ void MSAAServiceImpl::dispose()
     // and substreams which in turn release theirs, etc. When xRootFolder is
     // released when this destructor completes, the folder tree should be
     // deleted fully (and automagically).
-    FreeTopWindowListener();
+    m_pTopWindowListener.clear();
 }
 
 }
commit 07d4ae39601175caed76b4aa41d6e21d77c717b0
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Nov 20 19:25:47 2013 +0100

    --enable-ia2 disables building java-bridge, so disable packaging it too
    
    Change-Id: I7e3b2d47af9a9b91b22df43fc56cdfd3522de6d8

diff --git a/Repository.mk b/Repository.mk
old mode 100755
new mode 100644
index 220d79b..b31a809
--- a/Repository.mk
+++ b/Repository.mk
@@ -554,13 +554,14 @@ $(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
 		dtrans \
 		fps \
 		ftransl \
-		$(if $(ENABLE_JAVA),java_uno_accessbridge) \
 		$(if $(DISABLE_ATL),,\
 			inprocserv \
 		) \
 		$(if $(ENABLE_IA2), \
-			UAccCOM \
-			winaccessibility \
+				UAccCOM \
+				winaccessibility \
+			, \
+				$(if $(ENABLE_JAVA),java_uno_accessbridge) \
 		) \
 	) \
 ))
diff --git a/configure.ac b/configure.ac
old mode 100755
new mode 100644
index 1473aeb..394b8cd
--- a/configure.ac
+++ b/configure.ac
@@ -11613,6 +11613,7 @@ if test "$enable_ia2" = "yes"; then
     if test "$_os" = "WINNT"; then
         AC_MSG_RESULT([yes])
         ENABLE_IA2="TRUE"
+        SCPDEFS="$SCPDEFS -DENABLE_IA2"
     else
         AC_MSG_RESULT([no])
     fi
diff --git a/scp2/source/ooo/file_ooo.scp b/scp2/source/ooo/file_ooo.scp
index e8be228..68eae2e 100644
--- a/scp2/source/ooo/file_ooo.scp
+++ b/scp2/source/ooo/file_ooo.scp
@@ -315,7 +315,7 @@ STD_JAR_FILE( gid_File_Jar_Xmerge, xmerge )
 STD_JAR_FILE( gid_File_Jar_Xmergebridge, XMergeBridge )
 #endif
 
-#if defined ENABLE_JAVA && defined WNT
+#if defined ENABLE_JAVA && defined WNT && !defined(ENABLE_IA2)
 STD_JAR_FILE( gid_File_Jar_Accessbridge, java_uno_accessbridge )
 #endif
 


More information about the Libreoffice-commits mailing list