[Libreoffice-commits] core.git: 16 commits - desktop/Executable_sbase.mk desktop/Executable_scalc.mk desktop/Executable_sdraw.mk desktop/Executable_simpress.mk desktop/Executable_smath.mk desktop/Executable_sweb.mk desktop/Executable_swriter.mk include/postwin.h include/prewin.h winaccessibility/Library_uacccom.mk winaccessibility/Library_winaccessibility.mk winaccessibility/source

Michael Stahl mstahl at redhat.com
Thu Dec 12 11:15:47 PST 2013


 desktop/Executable_sbase.mk                             |   11 
 desktop/Executable_scalc.mk                             |   11 
 desktop/Executable_sdraw.mk                             |   11 
 desktop/Executable_simpress.mk                          |   11 
 desktop/Executable_smath.mk                             |   11 
 desktop/Executable_sweb.mk                              |   11 
 desktop/Executable_swriter.mk                           |   11 
 include/postwin.h                                       |   11 
 include/prewin.h                                        |    4 
 winaccessibility/Library_uacccom.mk                     |    6 
 winaccessibility/Library_winaccessibility.mk            |    1 
 winaccessibility/source/UAccCOM/AccActionBase.cxx       |   19 -
 winaccessibility/source/UAccCOM/AccComponentBase.cxx    |   19 -
 winaccessibility/source/UAccCOM/AccEditableText.cxx     |   26 -
 winaccessibility/source/UAccCOM/AccHyperLink.cxx        |   24 -
 winaccessibility/source/UAccCOM/AccHypertext.cxx        |   13 
 winaccessibility/source/UAccCOM/AccImage.cxx            |    8 
 winaccessibility/source/UAccCOM/AccRelation.cxx         |   16 -
 winaccessibility/source/UAccCOM/AccTable.cxx            |   98 +-----
 winaccessibility/source/UAccCOM/AccTextBase.cxx         |   69 +---
 winaccessibility/source/UAccCOM/AccValue.cxx            |   17 -
 winaccessibility/source/UAccCOM/CheckEnableAccessible.h |   30 -
 winaccessibility/source/UAccCOM/EnumVariant.cxx         |   19 -
 winaccessibility/source/UAccCOM/MAccessible.cxx         |  256 ++++++++--------
 winaccessibility/source/UAccCOM/MAccessible.h           |   42 --
 winaccessibility/source/UAccCOM/UNOXWrapper.cxx         |   13 
 winaccessibility/source/UAccCOM/UNOXWrapper.h           |   24 -
 winaccessibility/source/UAccCOM/acccommon.h             |   24 -
 winaccessibility/source/UAccCOM/stdafx.h                |   10 
 winaccessibility/source/UAccCOMIDL/UAccCOM.idl          |    2 
 winaccessibility/source/service/AccEventListener.cxx    |   18 -
 winaccessibility/source/service/AccObject.cxx           |    2 
 winaccessibility/source/service/AccObjectWinManager.cxx |   18 -
 winaccessibility/source/service/checkmt.cxx             |   31 -
 winaccessibility/source/service/checkmt.hxx             |   26 -
 35 files changed, 353 insertions(+), 570 deletions(-)

New commits:
commit 07359c242830bcc934d491870cdf5cb70fc26414
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Dec 12 17:39:50 2013 +0100

    Revert "fix windows build"
    
    This reverts commit 45504f9ba8de2a4372193910b2cb9405f1ea896a.
    
    The problem that is apparently fixed here is that link.exe is too dumb
    to pick the right entry-point if the WinMain definition does not come
    from an object file but a .lib; in that case it apparently defaults to
    archaic 8-bit WinMain so tell it to use Unicode one with /ENTRY.
    
    Conflicts:
    
    	desktop/Executable_sbase.mk
    	desktop/Executable_scalc.mk
    	desktop/Executable_sdraw.mk
    	desktop/Executable_simpress.mk
    	desktop/Executable_smath.mk
    	desktop/Executable_sweb.mk
    	desktop/Executable_swriter.mk
    
    Change-Id: Ib6239eb0fd3d64fd4a292a0d42d65ef75475c389

diff --git a/desktop/Executable_sbase.mk b/desktop/Executable_sbase.mk
index 77d0c47..9d35f56 100644
--- a/desktop/Executable_sbase.mk
+++ b/desktop/Executable_sbase.mk
@@ -15,17 +15,18 @@ $(eval $(call gb_Executable_add_defs,sbase,\
     -DUNICODE \
 ))
 
+$(eval $(call gb_Executable_add_ldflags,sbase,\
+    /ENTRY:wWinMainCRTStartup \
+))
+
 $(eval $(call gb_Executable_use_libraries,sbase,\
 	$(gb_UWINAPI) \
 ))
 
-$(eval $(call gb_Executable_add_libs,sbase,\
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher) \
+$(eval $(call gb_Executable_use_static_libraries,sbase,\
+    winlauncher \
 ))
 
-$(call gb_Executable_get_target,sbase) : \
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher)
-
 $(eval $(call gb_Executable_add_exception_objects,sbase,\
     desktop/win32/source/applauncher/sbase \
 ))
diff --git a/desktop/Executable_scalc.mk b/desktop/Executable_scalc.mk
index 8c8cb42..0a00849 100644
--- a/desktop/Executable_scalc.mk
+++ b/desktop/Executable_scalc.mk
@@ -15,17 +15,18 @@ $(eval $(call gb_Executable_add_defs,scalc,\
     -DUNICODE \
 ))
 
+$(eval $(call gb_Executable_add_ldflags,scalc,\
+    /ENTRY:wWinMainCRTStartup \
+))
+
 $(eval $(call gb_Executable_use_libraries,scalc,\
 	$(gb_UWINAPI) \
 ))
 
-$(eval $(call gb_Executable_add_libs,scalc,\
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher) \
+$(eval $(call gb_Executable_use_static_libraries,scalc,\
+    winlauncher \
 ))
 
-$(call gb_Executable_get_target,scalc) : \
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher)
-
 $(eval $(call gb_Executable_add_exception_objects,scalc,\
     desktop/win32/source/applauncher/scalc \
 ))
diff --git a/desktop/Executable_sdraw.mk b/desktop/Executable_sdraw.mk
index e3a4eef..17f65ec 100644
--- a/desktop/Executable_sdraw.mk
+++ b/desktop/Executable_sdraw.mk
@@ -15,17 +15,18 @@ $(eval $(call gb_Executable_add_defs,sdraw,\
     -DUNICODE \
 ))
 
+$(eval $(call gb_Executable_add_ldflags,sdraw,\
+    /ENTRY:wWinMainCRTStartup \
+))
+
 $(eval $(call gb_Executable_use_libraries,sdraw,\
 	$(gb_UWINAPI) \
 ))
 
-$(eval $(call gb_Executable_add_libs,sdraw,\
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher) \
+$(eval $(call gb_Executable_use_static_libraries,sdraw,\
+    winlauncher \
 ))
 
-$(call gb_Executable_get_target,sdraw) : \
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher)
-
 $(eval $(call gb_Executable_add_exception_objects,sdraw,\
     desktop/win32/source/applauncher/sdraw \
 ))
diff --git a/desktop/Executable_simpress.mk b/desktop/Executable_simpress.mk
index 4d0648e..d486f57 100644
--- a/desktop/Executable_simpress.mk
+++ b/desktop/Executable_simpress.mk
@@ -15,17 +15,18 @@ $(eval $(call gb_Executable_add_defs,simpress,\
     -DUNICODE \
 ))
 
+$(eval $(call gb_Executable_add_ldflags,simpress,\
+    /ENTRY:wWinMainCRTStartup \
+))
+
 $(eval $(call gb_Executable_use_libraries,simpress,\
 	$(gb_UWINAPI) \
 ))
 
-$(eval $(call gb_Executable_add_libs,simpress,\
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher) \
+$(eval $(call gb_Executable_use_static_libraries,simpress,\
+    winlauncher \
 ))
 
-$(call gb_Executable_get_target,simpress) : \
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher)
-
 $(eval $(call gb_Executable_add_exception_objects,simpress,\
     desktop/win32/source/applauncher/simpress \
 ))
diff --git a/desktop/Executable_smath.mk b/desktop/Executable_smath.mk
index 627ceb4..980cc54 100644
--- a/desktop/Executable_smath.mk
+++ b/desktop/Executable_smath.mk
@@ -15,17 +15,18 @@ $(eval $(call gb_Executable_add_defs,smath,\
     -DUNICODE \
 ))
 
+$(eval $(call gb_Executable_add_ldflags,smath,\
+    /ENTRY:wWinMainCRTStartup \
+))
+
 $(eval $(call gb_Executable_use_libraries,smath,\
 	$(gb_UWINAPI) \
 ))
 
-$(eval $(call gb_Executable_add_libs,smath,\
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher) \
+$(eval $(call gb_Executable_use_static_libraries,smath,\
+    winlauncher \
 ))
 
-$(call gb_Executable_get_target,smath) : \
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher)
-
 $(eval $(call gb_Executable_add_exception_objects,smath,\
     desktop/win32/source/applauncher/smath \
 ))
diff --git a/desktop/Executable_sweb.mk b/desktop/Executable_sweb.mk
index 901007c..25efba6 100644
--- a/desktop/Executable_sweb.mk
+++ b/desktop/Executable_sweb.mk
@@ -15,17 +15,18 @@ $(eval $(call gb_Executable_add_defs,sweb,\
     -DUNICODE \
 ))
 
+$(eval $(call gb_Executable_add_ldflags,sweb,\
+    /ENTRY:wWinMainCRTStartup \
+))
+
 $(eval $(call gb_Executable_use_libraries,sweb,\
 	$(gb_UWINAPI) \
 ))
 
-$(eval $(call gb_Executable_add_libs,sweb,\
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher) \
+$(eval $(call gb_Executable_use_static_libraries,sweb,\
+    winlauncher \
 ))
 
-$(call gb_Executable_get_target,sweb) : \
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher)
-
 $(eval $(call gb_Executable_add_exception_objects,sweb,\
     desktop/win32/source/applauncher/sweb \
 ))
diff --git a/desktop/Executable_swriter.mk b/desktop/Executable_swriter.mk
index cedefd0..f7b5228 100644
--- a/desktop/Executable_swriter.mk
+++ b/desktop/Executable_swriter.mk
@@ -15,17 +15,18 @@ $(eval $(call gb_Executable_add_defs,swriter,\
     -DUNICODE \
 ))
 
+$(eval $(call gb_Executable_add_ldflags,swriter,\
+    /ENTRY:wWinMainCRTStartup \
+))
+
 $(eval $(call gb_Executable_use_libraries,swriter,\
 	$(gb_UWINAPI) \
 ))
 
-$(eval $(call gb_Executable_add_libs,swriter,\
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher) \
+$(eval $(call gb_Executable_use_static_libraries,swriter,\
+    winlauncher \
 ))
 
-$(call gb_Executable_get_target,swriter) : \
-    $(call gb_CxxObject_get_target,desktop/win32/source/applauncher/launcher)
-
 $(eval $(call gb_Executable_add_exception_objects,swriter,\
     desktop/win32/source/applauncher/swriter \
 ))
commit a8804dfc502454b562f1e0f5947c2f5264cd9b92
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Dec 12 18:52:14 2013 +0100

    winaccessibility: let's try to remove that IsInMainThread()
    
    ... and see what happens.  Hopefully nothing bad since everything should
    be thread-safe now.
    
    Change-Id: I333b29bc2066578ccabadb022936a28dafdf7104

diff --git a/winaccessibility/Library_winaccessibility.mk b/winaccessibility/Library_winaccessibility.mk
index 45a86f3..89b87a6 100644
--- a/winaccessibility/Library_winaccessibility.mk
+++ b/winaccessibility/Library_winaccessibility.mk
@@ -45,7 +45,6 @@ $(eval $(call gb_Library_add_exception_objects,winaccessibility,\
 	winaccessibility/source/service/AccTopWindowListener \
 	winaccessibility/source/service/msaaservice_impl \
 	winaccessibility/source/service/AccResource \
-	winaccessibility/source/service/checkmt \
 ))
 
 $(eval $(call gb_Library_use_externals,winaccessibility,\
diff --git a/winaccessibility/source/service/AccObjectWinManager.cxx b/winaccessibility/source/service/AccObjectWinManager.cxx
index dca768d..dc87c45 100644
--- a/winaccessibility/source/service/AccObjectWinManager.cxx
+++ b/winaccessibility/source/service/AccObjectWinManager.cxx
@@ -42,7 +42,6 @@
 #include "AccTableEventListener.hxx"
 #include "AccObject.hxx"
 #include "unomsaaevent.hxx"
-#include "checkmt.hxx"
 
 
 using namespace std;
@@ -159,14 +158,6 @@ AccObject* AccObjectWinManager::GetTopWindowAccObj(HWND hWnd)
    */
 sal_Bool AccObjectWinManager::NotifyAccEvent(XAccessible* pXAcc,short state)
 {
-    // no idea why this checks for main thread but with this check no mutex
-    // is needed here (the test only accesses Application const member)
-
-    if (!IsInMainThread())
-    {
-        return sal_False;
-    }
-
     Reference< XAccessibleContext > pRContext;
 
     if( pXAcc == NULL)
diff --git a/winaccessibility/source/service/checkmt.cxx b/winaccessibility/source/service/checkmt.cxx
deleted file mode 100644
index 96535c3..0000000
--- a/winaccessibility/source/service/checkmt.cxx
+++ /dev/null
@@ -1,31 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "checkmt.hxx"
-#include <vcl/svapp.hxx>
-
-bool IsInMainThread()
-{
-    if( Application::GetMainThreadIdentifier() == osl::Thread::getCurrentIdentifier())
-        return true;
-    else
-        return false;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/winaccessibility/source/service/checkmt.hxx b/winaccessibility/source/service/checkmt.hxx
deleted file mode 100644
index 2c3a6d4..0000000
--- a/winaccessibility/source/service/checkmt.hxx
+++ /dev/null
@@ -1,26 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#pragma once
-
-#include "comphelper/solarmutex.hxx"
-
-bool IsInMainThread();
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit fdd76463b4dfd05880effdd2afc0001eea3d850a
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Dec 12 18:48:53 2013 +0100

    winaccessibility: remove some noise from not-implemented methods
    
    Change-Id: I8046ae37cba87f0e5df550de831229345df1c6f8

diff --git a/winaccessibility/source/UAccCOM/AccTable.cxx b/winaccessibility/source/UAccCOM/AccTable.cxx
index 15b964c..8d1fbd5 100644
--- a/winaccessibility/source/UAccCOM/AccTable.cxx
+++ b/winaccessibility/source/UAccCOM/AccTable.cxx
@@ -100,13 +100,7 @@ STDMETHODIMP CAccTable::get_accessibleAt(long row, long column, IUnknown * * acc
   */
 STDMETHODIMP CAccTable::get_caption(IUnknown * *)
 {
-
-
-    ENTER_PROTECTED_BLOCK
-
     return E_NOTIMPL;
-
-    LEAVE_PROTECTED_BLOCK
 }
 
 /**
@@ -934,16 +928,11 @@ STDMETHODIMP CAccTable::get_rowColumnExtentsAtIndex(long,
         long  *,
         boolean  *)
 {
-    ENTER_PROTECTED_BLOCK
-
     return E_NOTIMPL;
-
-    LEAVE_PROTECTED_BLOCK
 }
 
 STDMETHODIMP CAccTable::get_modelChange(IA2TableModelChange  *)
 {
-
     return E_NOTIMPL;
 }
 
diff --git a/winaccessibility/source/UAccCOM/AccTextBase.cxx b/winaccessibility/source/UAccCOM/AccTextBase.cxx
index 6ba20e3..6fa7204 100644
--- a/winaccessibility/source/UAccCOM/AccTextBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccTextBase.cxx
@@ -899,24 +899,12 @@ STDMETHODIMP CAccTextBase::get_oldText( IA2TextSegment *)
 */
 STDMETHODIMP CAccTextBase::scrollSubstringToPoint(long, long, IA2CoordinateType, long, long )
 {
-
-
-    ENTER_PROTECTED_BLOCK
-
     return E_NOTIMPL;
-
-    LEAVE_PROTECTED_BLOCK
 }
 
 STDMETHODIMP CAccTextBase::scrollSubstringTo(long, long, IA2ScrollType)
 {
-
-
-    ENTER_PROTECTED_BLOCK
-
     return E_NOTIMPL;
-
-    LEAVE_PROTECTED_BLOCK
 }
 
 /**
diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx
index c4e00c7..308e839 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.cxx
+++ b/winaccessibility/source/UAccCOM/MAccessible.cxx
@@ -1904,22 +1904,12 @@ STDMETHODIMP CMAccessible:: get_nActions(long __RPC_FAR *nActions)
 
 STDMETHODIMP CMAccessible:: scrollToPoint(enum IA2CoordinateType, long, long)
 {
-
-    ENTER_PROTECTED_BLOCK
-    ISDESTROY()
     return E_NOTIMPL;
-    LEAVE_PROTECTED_BLOCK
-
 }
+
 STDMETHODIMP CMAccessible:: scrollTo(enum IA2ScrollType)
 {
-
-    ENTER_PROTECTED_BLOCK
-    ISDESTROY()
-
     return E_NOTIMPL;
-
-    LEAVE_PROTECTED_BLOCK
 }
 
 static XAccessible* getTheParentOfMember(XAccessible* pXAcc)
@@ -2122,12 +2112,7 @@ STDMETHODIMP CMAccessible:: get_groupPosition(long __RPC_FAR *groupLevel,long __
 
 STDMETHODIMP CMAccessible:: get_extendedStates( long, BSTR __RPC_FAR *__RPC_FAR *, long __RPC_FAR *)
 {
-        ENTER_PROTECTED_BLOCK
-        ISDESTROY()
-
-        return E_NOTIMPL;
-
-    LEAVE_PROTECTED_BLOCK
+    return E_NOTIMPL;
 }
 
 
@@ -3161,42 +3146,23 @@ STDMETHODIMP CMAccessible:: get_states(AccessibleStates __RPC_FAR *states )
 // return the UNO roles
 STDMETHODIMP CMAccessible:: get_extendedRole( BSTR __RPC_FAR *  )
 {
-        ENTER_PROTECTED_BLOCK
-        ISDESTROY()
-
-        return E_NOTIMPL;
-
-    LEAVE_PROTECTED_BLOCK
+    return E_NOTIMPL;
 }
 
 STDMETHODIMP CMAccessible:: get_localizedExtendedRole( BSTR __RPC_FAR *  )
 {
-
-    ENTER_PROTECTED_BLOCK
-        ISDESTROY()
-        return E_NOTIMPL;
-
-    LEAVE_PROTECTED_BLOCK
+    return E_NOTIMPL;
 }
+
 STDMETHODIMP CMAccessible:: get_nExtendedStates( long __RPC_FAR * )
 {
-        ENTER_PROTECTED_BLOCK
-        ISDESTROY()
-
-        return E_NOTIMPL;
-
-    LEAVE_PROTECTED_BLOCK
+    return E_NOTIMPL;
 }
 
 
 STDMETHODIMP CMAccessible:: get_localizedExtendedStates( long, BSTR __RPC_FAR *__RPC_FAR *, long __RPC_FAR *)
 {
-
-    ENTER_PROTECTED_BLOCK
-        ISDESTROY()
-        return E_NOTIMPL;
-
-    LEAVE_PROTECTED_BLOCK
+    return E_NOTIMPL;
 }
 
 
commit 57acb3d068ef1e47532ae100d78aa0bd8d061683
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Dec 12 18:45:16 2013 +0100

    winaccessibility: out-line those COM methods
    
    Change-Id: I7e9a94898c6bc8142b46a05ffba56fc41eb125c2

diff --git a/winaccessibility/source/UAccCOM/UNOXWrapper.cxx b/winaccessibility/source/UAccCOM/UNOXWrapper.cxx
index c07306f..bc1a89c 100644
--- a/winaccessibility/source/UAccCOM/UNOXWrapper.cxx
+++ b/winaccessibility/source/UAccCOM/UNOXWrapper.cxx
@@ -21,7 +21,20 @@
 #include "UAccCOM.h"
 #include "UNOXWrapper.h"
 
+using namespace ::com::sun::star;
+
 /////////////////////////////////////////////////////////////////////////////
 // CUNOXWrapper
 
+STDMETHODIMP CUNOXWrapper::put_XInterface(hyper nXInterface)
+{
+    pUNOInterface = reinterpret_cast<accessibility::XAccessible*>(nXInterface);
+    return S_OK;
+}
+
+STDMETHODIMP CUNOXWrapper::put_XSubInterface(hyper)
+{
+    return S_OK;
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/winaccessibility/source/UAccCOM/UNOXWrapper.h b/winaccessibility/source/UAccCOM/UNOXWrapper.h
index 6d95402..d6c6660 100644
--- a/winaccessibility/source/UAccCOM/UNOXWrapper.h
+++ b/winaccessibility/source/UAccCOM/UNOXWrapper.h
@@ -37,17 +37,8 @@ public:
 
 public:
     // IUNOXWrapper
-
-    STDMETHOD(put_XInterface)(hyper pXInterface)
-    {
-        pUNOInterface = (com::sun::star::accessibility::XAccessible*)pXInterface;
-        return S_OK;
-    }
-
-    STDMETHOD(put_XSubInterface)(hyper)
-    {
-        return S_OK;
-    }
+    STDMETHOD(put_XInterface)(hyper pXInterface);
+    STDMETHOD(put_XSubInterface)(hyper);
 
 protected:
 
commit 975e1d293d6f702c81647449fd28560b6d00e4a0
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Dec 12 15:22:57 2013 +0100

    winaccessibility: clear entires from XHWNDDocList too
    
    ... in DeleteAccObj().  Otherwise pointers to deleted documents will be
    used.
    
    Change-Id: Ia807dc3a2c782019cf7fc874d264058219956d74

diff --git a/winaccessibility/source/service/AccObjectWinManager.cxx b/winaccessibility/source/service/AccObjectWinManager.cxx
index 19653c1..dca768d 100644
--- a/winaccessibility/source/service/AccObjectWinManager.cxx
+++ b/winaccessibility/source/service/AccObjectWinManager.cxx
@@ -557,6 +557,10 @@ void AccObjectWinManager::DeleteAccObj( XAccessible* pXAcc )
     size_t i = XResIdAccList.erase(accObj.GetResID());
     assert(i != 0);
     DeleteFromHwndXAcc(pXAcc);
+    if (DOCUMENT == accObj.GetRole())
+    {
+        XHWNDDocList.erase(accObj.GetParentHWND());
+    }
     XIdAccList.erase(pXAcc); // note: this invalidates accObj so do it last!
 }
 
commit 506bab8f62c585380e607b91ab80c939dc99851c
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Dec 12 14:47:47 2013 +0100

    winaccessibility: GetChildInterface may return 0
    
    Change-Id: I950072d22cd315d1898b76a2c345121d31d432c4

diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx
index 82fb41a..c4e00c7 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.cxx
+++ b/winaccessibility/source/UAccCOM/MAccessible.cxx
@@ -378,8 +378,10 @@ STDMETHODIMP CMAccessible::get_accChild(VARIANT varChild, IDispatch **ppdispChil
                 return S_OK;
             }
             *ppdispChild = GetChildInterface(varChild.lVal);
+            if (!(*ppdispChild))
+                return S_FALSE;
             (*ppdispChild)->AddRef();
-            return (*ppdispChild)?S_OK:S_FALSE;
+            return S_OK;
         }
         return S_FALSE;
 
commit b22e987113374399c7455f7979bc34519eac69da
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Dec 12 12:30:53 2013 +0100

    winaccessibility: do not access freed AccObject
    
    The AccObject is stored by value in XIdAccList, so don't call GetResID()
    after it has been erased.
    
    Change-Id: I391aad1e3ab71d443cc6e6b92381f74918e0bcfb

diff --git a/winaccessibility/source/service/AccObjectWinManager.cxx b/winaccessibility/source/service/AccObjectWinManager.cxx
index 05a64af..19653c1 100644
--- a/winaccessibility/source/service/AccObjectWinManager.cxx
+++ b/winaccessibility/source/service/AccObjectWinManager.cxx
@@ -554,9 +554,10 @@ void AccObjectWinManager::DeleteAccObj( XAccessible* pXAcc )
     {
         accObj.GetIMAccessible()->Release();
     }
-    XIdAccList.erase( pXAcc );
-    XResIdAccList.erase( accObj.GetResID() );
+    size_t i = XResIdAccList.erase(accObj.GetResID());
+    assert(i != 0);
     DeleteFromHwndXAcc(pXAcc);
+    XIdAccList.erase(pXAcc); // note: this invalidates accObj so do it last!
 }
 
 /**
commit 9e351edccf3b9a71bb310bcaefe07821479ff5e5
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Dec 12 00:09:41 2013 +0100

    winaccessibility: fix exception handling in AccEventListener
    
    RemoveMeFromBroadcaster() may catch a DisposedException and then not
    call NotifyDestroy.
    
    Change-Id: I2b766541c3e6800c88a83aa482de0093714d39c2

diff --git a/winaccessibility/source/service/AccEventListener.cxx b/winaccessibility/source/service/AccEventListener.cxx
index 73b0431..7874f47 100644
--- a/winaccessibility/source/service/AccEventListener.cxx
+++ b/winaccessibility/source/service/AccEventListener.cxx
@@ -233,14 +233,20 @@ void AccEventListener::RemoveMeFromBroadcaster()
         {
             return;
         }
-        Reference<XAccessibleEventBroadcaster> const xBroadcaster(
-                m_xAccessible->getAccessibleContext(), UNO_QUERY);
-        if (xBroadcaster.is())
+        try
         {
-            //remove the lister from accessible object
-            xBroadcaster->removeAccessibleEventListener(this);
-            pAgent->NotifyDestroy(m_xAccessible.get());
+            Reference<XAccessibleEventBroadcaster> const xBroadcaster(
+                    m_xAccessible->getAccessibleContext(), UNO_QUERY);
+            if (xBroadcaster.is())
+            {
+                //remove the lister from accessible object
+                xBroadcaster->removeAccessibleEventListener(this);
+            }
         }
+        catch (Exception const&)
+        {   // may throw if it's already disposed - ignore that
+        }
+        pAgent->NotifyDestroy(m_xAccessible.get());
         m_xAccessible.clear(); // release cyclic reference
     }
     catch(...)
commit b6664d0649d9be6208b39d6dd276e40347af44c3
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Dec 11 21:55:28 2013 +0100

    winaccessibility: nobody calls get_XInterface
    
    Change-Id: I201fc14a02c47a6c735c65f649c6b9f068d92c71

diff --git a/winaccessibility/source/UAccCOM/UNOXWrapper.h b/winaccessibility/source/UAccCOM/UNOXWrapper.h
index 6d22b31..6d95402 100644
--- a/winaccessibility/source/UAccCOM/UNOXWrapper.h
+++ b/winaccessibility/source/UAccCOM/UNOXWrapper.h
@@ -49,17 +49,6 @@ public:
         return S_OK;
     }
 
-    STDMETHOD(get_XInterface)(/*[out,retval]*/hyper *pXInterface)
-    {
-        *pXInterface = reinterpret_cast<hyper>(pUNOInterface);
-        return S_OK;
-    }
-
-    STDMETHOD(get_XSubInterface)(/*[out,retval]*/hyper *)
-    {
-        return S_OK;
-    }
-
 protected:
 
     com::sun::star::accessibility::XAccessible* pUNOInterface;
diff --git a/winaccessibility/source/UAccCOMIDL/UAccCOM.idl b/winaccessibility/source/UAccCOMIDL/UAccCOM.idl
index 4d5da88..347ac4c 100644
--- a/winaccessibility/source/UAccCOMIDL/UAccCOM.idl
+++ b/winaccessibility/source/UAccCOMIDL/UAccCOM.idl
@@ -74,8 +74,6 @@ import "defines.idl";
     {
         [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);
     };
 
 [
commit d28687d5171784e1ec23d4cf13d7b3c56cc52782
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Dec 11 21:40:51 2013 +0100

    winaccessibility: fix locking in UAccCOM
    
    The COM components will (usually? always?) be called on the main thread
    via COM, and may also be called on any thread from the UNO event
    listeners.  Both ways may access the global AccWinObjectManager.
    So the easiest way to lock all that without introducing new deadlocks
    seems to be to just use the SolarMutex.
    
    The fact that the main thread is in a COM STA is rather irrelevant here
    since we don't currently do the required manual marshalling of the COM
    pointers so they can be accessed from UNO event listeners running in
    threads other than the main thread anyway.
    
    To get that to build:
    - use prewin.h and postwin.h around ATL headers
    - link UAccCOM against vcl
    - define both UNICODE and _UNICODE to not break on mis-matching TCHAR
      nonsense
    
    Change-Id: I1ccdf7a4a5c2b5f0b9c29ef39d126c4b8a16898a

diff --git a/winaccessibility/Library_uacccom.mk b/winaccessibility/Library_uacccom.mk
index 750d41c..b7760a7 100644
--- a/winaccessibility/Library_uacccom.mk
+++ b/winaccessibility/Library_uacccom.mk
@@ -21,7 +21,8 @@ $(eval $(call gb_Library_set_include,UAccCOM,\
 
 $(eval $(call gb_Library_add_defs,UAccCOM,\
 	-DUACCCOM_DLLIMPLEMENTATION \
-	-D_UNICODE=1 \
+	-D_UNICODE \
+	-DUNICODE \
 ))
 
 $(eval $(call gb_Library_use_sdk_api,UAccCOM))
@@ -54,6 +55,7 @@ $(eval $(call gb_Library_add_ldflags,UAccCOM,\
 ))
 
 $(eval $(call gb_Library_use_libraries,UAccCOM,\
+	vcl \
 	cppu \
 	sal \
 ))
diff --git a/winaccessibility/source/UAccCOM/AccActionBase.cxx b/winaccessibility/source/UAccCOM/AccActionBase.cxx
index 189f3b6..c965225 100644
--- a/winaccessibility/source/UAccCOM/AccActionBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccActionBase.cxx
@@ -28,6 +28,8 @@
 #include <com/sun/star/accessibility/AccessibleRole.hpp>
 #include <com/sun/star/accessibility/XAccessibleContext.hpp>
 
+#include <vcl/svapp.hxx>
+
 #include "AccessibleKeyStroke.h"
 
 #ifndef __ACCCOMMON_H_
@@ -107,6 +109,8 @@ void GetDfActionByUNORole(XAccessibleContext* pRContext, BSTR* pRet)
  */
 STDMETHODIMP CAccActionBase::nActions(/*[out,retval]*/long* nActions)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -129,6 +133,8 @@ STDMETHODIMP CAccActionBase::nActions(/*[out,retval]*/long* nActions)
  */
 STDMETHODIMP CAccActionBase::doAction(/* [in] */ long actionIndex)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if( pRXAct.is() )
@@ -148,6 +154,8 @@ STDMETHODIMP CAccActionBase::doAction(/* [in] */ long actionIndex)
  */
 STDMETHODIMP CAccActionBase::get_description(long actionIndex,BSTR __RPC_FAR *description)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -195,6 +203,8 @@ STDMETHODIMP CAccActionBase::get_keyBinding(
     /* [length_is][length_is][size_is][size_is][out] */ BSTR __RPC_FAR *__RPC_FAR *keyBinding,
     /* [retval][out] */ long __RPC_FAR *nBinding)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if( !keyBinding || !nBinding)
@@ -238,7 +248,7 @@ STDMETHODIMP CAccActionBase::get_keyBinding(
  */
 STDMETHODIMP CAccActionBase::put_XInterface(hyper pXInterface)
 {
-
+    // internal IUNOXWrapper - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
 
diff --git a/winaccessibility/source/UAccCOM/AccComponentBase.cxx b/winaccessibility/source/UAccCOM/AccComponentBase.cxx
index 92efe7f..cc6cf46 100644
--- a/winaccessibility/source/UAccCOM/AccComponentBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccComponentBase.cxx
@@ -21,6 +21,7 @@
 #include "AccComponentBase.h"
 #include <com/sun/star/accessibility/XAccessible.hpp>
 #include <com/sun/star/accessibility/XAccessibleContext.hpp>
+#include <vcl/svapp.hxx>
 #include "MAccessible.h"
 
 using namespace com::sun::star::accessibility;
@@ -45,6 +46,8 @@ CAccComponentBase::~CAccComponentBase()
  */
 STDMETHODIMP CAccComponentBase::get_locationInParent(long *x, long *y)
 {
+    SolarMutexGuard g;
+
     try
     {
         if (x == NULL || y == NULL)
@@ -73,6 +76,8 @@ STDMETHODIMP CAccComponentBase::get_locationInParent(long *x, long *y)
  */
 STDMETHODIMP CAccComponentBase::get_locationOnScreen(long *x, long *y)
 {
+    SolarMutexGuard g;
+
     try
     {
         if (x == NULL || y == NULL)
@@ -100,6 +105,8 @@ STDMETHODIMP CAccComponentBase::get_locationOnScreen(long *x, long *y)
  */
 STDMETHODIMP CAccComponentBase::grabFocus(boolean * success)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (success == NULL)
@@ -124,6 +131,8 @@ STDMETHODIMP CAccComponentBase::grabFocus(boolean * success)
  */
 STDMETHODIMP CAccComponentBase::get_foreground(IA2Color * foreground)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (foreground == NULL)
@@ -147,6 +156,8 @@ STDMETHODIMP CAccComponentBase::get_foreground(IA2Color * foreground)
  */
 STDMETHODIMP CAccComponentBase::get_background(IA2Color * background)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (background == NULL)
@@ -170,6 +181,8 @@ STDMETHODIMP CAccComponentBase::get_background(IA2Color * background)
  */
 STDMETHODIMP CAccComponentBase::put_XInterface(hyper pXInterface)
 {
+    // internal IUNOXWrapper - no mutex meeded
+
     ENTER_PROTECTED_BLOCK
 
     CUNOXWrapper::put_XInterface(pXInterface);
diff --git a/winaccessibility/source/UAccCOM/AccEditableText.cxx b/winaccessibility/source/UAccCOM/AccEditableText.cxx
index f4de426..079ac53 100644
--- a/winaccessibility/source/UAccCOM/AccEditableText.cxx
+++ b/winaccessibility/source/UAccCOM/AccEditableText.cxx
@@ -23,6 +23,9 @@
 #include "stdafx.h"
 #include "UAccCOM.h"
 #include "AccEditableText.h"
+
+#include <vcl/svapp.hxx>
+
 #include <com/sun/star/accessibility/XAccessible.hpp>
 #include <com/sun/star/accessibility/XAccessibleContext.hpp>
 #include <com/sun/star/accessibility/XAccessibleText.hpp>
@@ -47,6 +50,8 @@ using namespace std;
  */
 STDMETHODIMP CAccEditableText::copyText(long startOffset, long endOffset)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK XInterface#
@@ -72,6 +77,8 @@ STDMETHODIMP CAccEditableText::copyText(long startOffset, long endOffset)
  */
 STDMETHODIMP CAccEditableText::deleteText(long startOffset, long endOffset)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if( !pRXEdtTxt.is() )
@@ -94,6 +101,8 @@ STDMETHODIMP CAccEditableText::deleteText(long startOffset, long endOffset)
  */
 STDMETHODIMP CAccEditableText::insertText(long offset, BSTR * text)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (text == NULL)
@@ -121,6 +130,8 @@ STDMETHODIMP CAccEditableText::insertText(long offset, BSTR * text)
  */
 STDMETHODIMP CAccEditableText::cutText(long startOffset, long endOffset)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if( !pRXEdtTxt.is() )
@@ -142,6 +153,8 @@ STDMETHODIMP CAccEditableText::cutText(long startOffset, long endOffset)
  */
 STDMETHODIMP CAccEditableText::pasteText(long offset)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if( !pRXEdtTxt.is() )
@@ -165,6 +178,8 @@ STDMETHODIMP CAccEditableText::pasteText(long offset)
  */
 STDMETHODIMP CAccEditableText::replaceText(long startOffset, long endOffset, BSTR * text)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -192,6 +207,8 @@ STDMETHODIMP CAccEditableText::replaceText(long startOffset, long endOffset, BST
  */
 STDMETHODIMP CAccEditableText::setAttributes(long startOffset, long endOffset, BSTR * attributes)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -461,7 +478,7 @@ void CAccEditableText::get_AnyFromOLECHAR(const ::rtl::OUString &ouName, const :
  */
 STDMETHODIMP CAccEditableText::put_XInterface(hyper pXInterface)
 {
-
+    // internal IUNOXWrapper - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
 
diff --git a/winaccessibility/source/UAccCOM/AccHyperLink.cxx b/winaccessibility/source/UAccCOM/AccHyperLink.cxx
index 3f86f66..04cd3e8 100644
--- a/winaccessibility/source/UAccCOM/AccHyperLink.cxx
+++ b/winaccessibility/source/UAccCOM/AccHyperLink.cxx
@@ -20,6 +20,9 @@
 #include "stdafx.h"
 #include "UAccCOM.h"
 #include "AccHyperLink.h"
+
+#include <vcl/svapp.hxx>
+
 #include <com/sun/star/accessibility/XAccessible.hpp>
 #include <com/sun/star/accessibility/XAccessibleAction.hpp>
 #include "MAccessible.h"
@@ -102,6 +105,8 @@ STDMETHODIMP CAccHyperLink::get_keyBinding(
 STDMETHODIMP CAccHyperLink::get_anchor(/* [in] */ long index,
         /* [retval][out] */ VARIANT __RPC_FAR *anchor)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -132,6 +137,8 @@ STDMETHODIMP CAccHyperLink::get_anchor(/* [in] */ long index,
 STDMETHODIMP CAccHyperLink::get_anchorTarget(/* [in] */ long index,
         /* [retval][out] */ VARIANT __RPC_FAR *anchorTarget)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -162,6 +169,8 @@ STDMETHODIMP CAccHyperLink::get_anchorTarget(/* [in] */ long index,
 */
 STDMETHODIMP CAccHyperLink::get_startIndex(/* [retval][out] */ long __RPC_FAR *index)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -183,6 +192,8 @@ STDMETHODIMP CAccHyperLink::get_startIndex(/* [retval][out] */ long __RPC_FAR *i
 */
 STDMETHODIMP CAccHyperLink::get_endIndex(/* [retval][out] */ long __RPC_FAR *index)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -209,6 +220,8 @@ STDMETHODIMP CAccHyperLink::get_endIndex(/* [retval][out] */ long __RPC_FAR *ind
 */
 STDMETHODIMP CAccHyperLink::get_valid(/* [retval][out] */ boolean __RPC_FAR *valid)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -235,6 +248,8 @@ STDMETHODIMP CAccHyperLink::get_valid(/* [retval][out] */ boolean __RPC_FAR *val
 */
 STDMETHODIMP CAccHyperLink::put_XInterface(hyper pXInterface)
 {
+    // internal IUNOXWrapper - no mutex meeded
+
     ENTER_PROTECTED_BLOCK
 
     CAccActionBase::put_XInterface(pXInterface);
@@ -266,6 +281,8 @@ STDMETHODIMP CAccHyperLink::put_XInterface(hyper pXInterface)
 */
 STDMETHODIMP CAccHyperLink::put_XSubInterface(hyper pXSubInterface)
 {
+    // internal IUNOXWrapper - no mutex meeded
+
     pRXLink = reinterpret_cast<XAccessibleHyperlink*>(pXSubInterface);
     pRXAct = reinterpret_cast<XAccessibleAction*>(pXSubInterface);
 
diff --git a/winaccessibility/source/UAccCOM/AccHypertext.cxx b/winaccessibility/source/UAccCOM/AccHypertext.cxx
index eeb8e02..4b14c8b 100644
--- a/winaccessibility/source/UAccCOM/AccHypertext.cxx
+++ b/winaccessibility/source/UAccCOM/AccHypertext.cxx
@@ -23,6 +23,8 @@
 #include "AccHyperLink.h"
 #include "acccommon.h"
 
+#include <vcl/svapp.hxx>
+
 
 using namespace com::sun::star::accessibility;
 using namespace com::sun::star::uno;
@@ -276,6 +278,8 @@ STDMETHODIMP CAccHypertext::scrollSubstringTo(long startIndex, long endIndex,enu
 */
 STDMETHODIMP CAccHypertext::get_nHyperlinks(long *hyperlinkCount)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -301,6 +305,8 @@ STDMETHODIMP CAccHypertext::get_nHyperlinks(long *hyperlinkCount)
 */
 STDMETHODIMP CAccHypertext::get_hyperlink(long index,IAccessibleHyperlink **hyperlink)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -347,6 +353,8 @@ STDMETHODIMP CAccHypertext::get_hyperlink(long index,IAccessibleHyperlink **hype
 */
 STDMETHODIMP CAccHypertext::get_hyperlinkIndex(long charIndex, long *hyperlinkIndex)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -371,7 +379,7 @@ STDMETHODIMP CAccHypertext::get_hyperlinkIndex(long charIndex, long *hyperlinkIn
 */
 STDMETHODIMP CAccHypertext::put_XInterface(hyper pXInterface)
 {
-
+    // internal IUNOXWrapper - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
 
diff --git a/winaccessibility/source/UAccCOM/AccImage.cxx b/winaccessibility/source/UAccCOM/AccImage.cxx
index 8ca1010..55f0ec6 100644
--- a/winaccessibility/source/UAccCOM/AccImage.cxx
+++ b/winaccessibility/source/UAccCOM/AccImage.cxx
@@ -20,6 +20,9 @@
 #include "stdafx.h"
 #include "UAccCOM.h"
 #include "AccImage.h"
+
+#include <vcl/svapp.hxx>
+
 #include <com/sun/star/accessibility/XAccessible.hpp>
 #include <com/sun/star/accessibility/XAccessibleContext.hpp>
 
@@ -33,6 +36,8 @@ using namespace com::sun::star::uno;
 */
 STDMETHODIMP CAccImage::get_description(BSTR * description)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -72,7 +77,7 @@ STDMETHODIMP CAccImage::get_imageSize(
 */
 STDMETHODIMP CAccImage::put_XInterface(hyper pXInterface)
 {
-
+    // internal IUNOXWrapper - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
 
diff --git a/winaccessibility/source/UAccCOM/AccRelation.cxx b/winaccessibility/source/UAccCOM/AccRelation.cxx
index 68b0958..ec52830 100644
--- a/winaccessibility/source/UAccCOM/AccRelation.cxx
+++ b/winaccessibility/source/UAccCOM/AccRelation.cxx
@@ -20,6 +20,9 @@
 #include "stdafx.h"
 #include "UAccCOM.h"
 #include "AccRelation.h"
+
+#include <vcl/svapp.hxx>
+
 #include <com/sun/star/accessibility/XAccessible.hpp>
 #include <com/sun/star/accessibility/XAccessibleContext.hpp>
 #include "MAccessible.h"
@@ -34,6 +37,8 @@ using namespace com::sun::star::uno;
 */
 STDMETHODIMP CAccRelation::get_relationType(BSTR * relationType)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (relationType == NULL)
@@ -67,6 +72,8 @@ STDMETHODIMP CAccRelation::get_localizedRelationType(BSTR *)
 */
 STDMETHODIMP CAccRelation::get_nTargets(long * nTargets)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (nTargets == NULL)
@@ -87,6 +94,8 @@ STDMETHODIMP CAccRelation::get_nTargets(long * nTargets)
 */
 STDMETHODIMP CAccRelation::get_target(long targetIndex, IUnknown * * target)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (target == NULL)
@@ -122,6 +131,8 @@ STDMETHODIMP CAccRelation::get_target(long targetIndex, IUnknown * * target)
 */
 STDMETHODIMP CAccRelation::get_targets(long, IUnknown * * target, long * nTargets)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -162,6 +173,7 @@ STDMETHODIMP CAccRelation::get_targets(long, IUnknown * * target, long * nTarget
 */
 STDMETHODIMP CAccRelation::put_XSubInterface(hyper pXSubInterface)
 {
+    // internal IUNOXWrapper - no mutex meeded
 
     relation = *reinterpret_cast<AccessibleRelation*>(pXSubInterface);
     return S_OK;
diff --git a/winaccessibility/source/UAccCOM/AccTable.cxx b/winaccessibility/source/UAccCOM/AccTable.cxx
index cb93934..15b964c 100644
--- a/winaccessibility/source/UAccCOM/AccTable.cxx
+++ b/winaccessibility/source/UAccCOM/AccTable.cxx
@@ -23,6 +23,9 @@
 #include "stdafx.h"
 #include "UAccCOM.h"
 #include "AccTable.h"
+
+#include <vcl/svapp.hxx>
+
 #include <com/sun/star/accessibility/XAccessible.hpp>
 #include "MAccessible.h"
 
@@ -43,6 +46,8 @@ using namespace com::sun::star::uno;
 
 STDMETHODIMP CAccTable::get_accessibleAt(long row, long column, IUnknown * * accessible)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -112,6 +117,8 @@ STDMETHODIMP CAccTable::get_caption(IUnknown * *)
   */
 STDMETHODIMP CAccTable::get_columnDescription(long column, BSTR * description)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -143,6 +150,8 @@ STDMETHODIMP CAccTable::get_columnDescription(long column, BSTR * description)
   */
 STDMETHODIMP CAccTable::get_columnExtentAt(long row, long column, long * nColumnsSpanned)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     XAccessibleTable    *pXAccTable = GetXInterface();
@@ -174,6 +183,8 @@ STDMETHODIMP CAccTable::get_columnExtentAt(long row, long column, long * nColumn
   */
 STDMETHODIMP CAccTable::get_columnHeader(IAccessibleTable __RPC_FAR *__RPC_FAR *accessibleTable, long *startingRowIndex)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -222,6 +233,8 @@ STDMETHODIMP CAccTable::get_columnHeader(IAccessibleTable __RPC_FAR *__RPC_FAR *
   */
 STDMETHODIMP CAccTable::get_nColumns(long * columnCount)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -245,6 +258,8 @@ STDMETHODIMP CAccTable::get_nColumns(long * columnCount)
   */
 STDMETHODIMP CAccTable::get_nRows(long * rowCount)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -268,6 +283,8 @@ STDMETHODIMP CAccTable::get_nRows(long * rowCount)
   */
 STDMETHODIMP CAccTable::get_nSelectedColumns(long * columnCount)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -292,6 +309,8 @@ STDMETHODIMP CAccTable::get_nSelectedColumns(long * columnCount)
   */
 STDMETHODIMP CAccTable::get_nSelectedRows(long * rowCount)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -317,6 +336,8 @@ STDMETHODIMP CAccTable::get_nSelectedRows(long * rowCount)
   */
 STDMETHODIMP CAccTable::get_rowDescription(long row, BSTR * description)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -349,6 +370,8 @@ STDMETHODIMP CAccTable::get_rowDescription(long row, BSTR * description)
   */
 STDMETHODIMP CAccTable::get_rowExtentAt(long row, long column, long * nRowsSpanned)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     XAccessibleTable    *pXAccTable = GetXInterface();
@@ -381,6 +404,8 @@ STDMETHODIMP CAccTable::get_rowExtentAt(long row, long column, long * nRowsSpann
   */
 STDMETHODIMP CAccTable::get_rowHeader(IAccessibleTable __RPC_FAR *__RPC_FAR *accessibleTable, long *startingColumnIndex)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -431,6 +456,8 @@ STDMETHODIMP CAccTable::get_rowHeader(IAccessibleTable __RPC_FAR *__RPC_FAR *acc
   */
 STDMETHODIMP CAccTable::get_selectedRows(long, long ** rows, long * nRows)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -468,6 +495,8 @@ STDMETHODIMP CAccTable::get_selectedRows(long, long ** rows, long * nRows)
   */
 STDMETHODIMP CAccTable::get_selectedColumns(long, long ** columns, long * numColumns)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -503,6 +532,8 @@ STDMETHODIMP CAccTable::get_selectedColumns(long, long ** columns, long * numCol
   */
 STDMETHODIMP CAccTable::get_summary(IUnknown * * accessible)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -539,6 +570,8 @@ STDMETHODIMP CAccTable::get_summary(IUnknown * * accessible)
   */
 STDMETHODIMP CAccTable::get_isColumnSelected(long column, unsigned char * isSelected)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -563,6 +596,8 @@ STDMETHODIMP CAccTable::get_isColumnSelected(long column, unsigned char * isSele
   */
 STDMETHODIMP CAccTable::get_isRowSelected(long row, unsigned char * isSelected)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -589,6 +624,8 @@ STDMETHODIMP CAccTable::get_isRowSelected(long row, unsigned char * isSelected)
   */
 STDMETHODIMP CAccTable::get_isSelected(long row, long column, unsigned char * isSelected)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -613,6 +650,8 @@ STDMETHODIMP CAccTable::get_isSelected(long row, long column, unsigned char * is
   */
 STDMETHODIMP CAccTable::selectRow(long row)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // Check XAccessibleTable reference.
@@ -655,6 +694,8 @@ STDMETHODIMP CAccTable::selectRow(long row)
   */
 STDMETHODIMP CAccTable::selectColumn(long column)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // Check XAccessibleTable reference.
@@ -698,6 +739,8 @@ STDMETHODIMP CAccTable::selectColumn(long column)
   */
 STDMETHODIMP CAccTable::unselectRow(long row)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // Check XAccessibleTable reference.
@@ -743,6 +786,8 @@ STDMETHODIMP CAccTable::unselectRow(long row)
   */
 STDMETHODIMP CAccTable::unselectColumn(long column)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // Check XAccessibleTable reference.
@@ -786,6 +831,8 @@ STDMETHODIMP CAccTable::unselectColumn(long column)
  */
 STDMETHODIMP CAccTable::put_XInterface(hyper pXInterface)
 {
+    // internal IUNOXWrapper - no mutex meeded
+
     ENTER_PROTECTED_BLOCK
 
     CUNOXWrapper::put_XInterface(pXInterface);
@@ -814,6 +861,8 @@ STDMETHODIMP CAccTable::put_XInterface(hyper pXInterface)
   */
 STDMETHODIMP CAccTable::get_columnIndex(long childIndex, long * columnIndex)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -836,6 +885,8 @@ STDMETHODIMP CAccTable::get_columnIndex(long childIndex, long * columnIndex)
   */
 STDMETHODIMP CAccTable::get_rowIndex(long childIndex, long * rowIndex)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -858,6 +909,8 @@ STDMETHODIMP CAccTable::get_rowIndex(long childIndex, long * rowIndex)
   */
 STDMETHODIMP CAccTable::get_childIndex(long RowIndex , long columnIndex, long * childIndex )
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -899,6 +952,8 @@ STDMETHODIMP CAccTable::get_modelChange(IA2TableModelChange  *)
 //    Number of children currently selected
 STDMETHODIMP CAccTable::get_nSelectedChildren(long *childCount)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -928,6 +983,8 @@ STDMETHODIMP CAccTable::get_nSelectedChildren(long *childCount)
 //    Length of array (not more than maxChildren)
 STDMETHODIMP CAccTable::get_selectedChildren(long, long **children, long *nChildren)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
diff --git a/winaccessibility/source/UAccCOM/AccTextBase.cxx b/winaccessibility/source/UAccCOM/AccTextBase.cxx
index 8e0be14..6ba20e3 100644
--- a/winaccessibility/source/UAccCOM/AccTextBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccTextBase.cxx
@@ -23,8 +23,11 @@
 #include "stdafx.h"
 #include <string>
 
-#include <com/sun/star/accessibility/AccessibleTextType.hpp>
 #include "AccTextBase.h"
+
+#include <vcl/svapp.hxx>
+
+#include <com/sun/star/accessibility/AccessibleTextType.hpp>
 #include <com/sun/star/accessibility/XAccessible.hpp>
 #include <com/sun/star/accessibility/XAccessibleContext.hpp>
 #include <com/sun/star/accessibility/XAccessibleComponent.hpp>
@@ -57,6 +60,8 @@ CAccTextBase::~CAccTextBase()
 */
 STDMETHODIMP CAccTextBase::get_addSelection(long startOffset, long endOffset)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK XInterface#
@@ -91,6 +96,8 @@ STDMETHODIMP CAccTextBase::get_addSelection(long startOffset, long endOffset)
 */
 STDMETHODIMP CAccTextBase::get_attributes(long offset, long * startOffset, long * endOffset, BSTR * textAttributes)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (startOffset == NULL || endOffset == NULL || textAttributes == NULL)
@@ -211,6 +218,8 @@ STDMETHODIMP CAccTextBase::get_attributes(long offset, long * startOffset, long
 */
 STDMETHODIMP CAccTextBase::get_caretOffset(long * offset)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (offset == NULL)
@@ -235,6 +244,8 @@ STDMETHODIMP CAccTextBase::get_caretOffset(long * offset)
 */
 STDMETHODIMP CAccTextBase::get_characterCount(long * nCharacters)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (nCharacters == NULL)
@@ -263,6 +274,8 @@ STDMETHODIMP CAccTextBase::get_characterCount(long * nCharacters)
 */
 STDMETHODIMP CAccTextBase::get_characterExtents(long offset, IA2CoordinateType coordType, long * x, long * y, long * width, long * height)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (x == NULL || height == NULL || y == NULL || width == NULL)
@@ -333,6 +346,8 @@ STDMETHODIMP CAccTextBase::get_characterExtents(long offset, IA2CoordinateType c
 */
 STDMETHODIMP CAccTextBase::get_nSelections(long * nSelections)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (nSelections == NULL)
@@ -377,6 +392,8 @@ STDMETHODIMP CAccTextBase::get_nSelections(long * nSelections)
 */
 STDMETHODIMP CAccTextBase::get_offsetAtPoint(long x, long y, IA2CoordinateType, long * offset)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (offset == NULL)
@@ -404,6 +421,8 @@ STDMETHODIMP CAccTextBase::get_offsetAtPoint(long x, long y, IA2CoordinateType,
 
 STDMETHODIMP CAccTextBase::get_selection(long selectionIndex, long * startOffset, long * endOffset)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (startOffset == NULL || endOffset == NULL )
@@ -451,6 +470,8 @@ STDMETHODIMP CAccTextBase::get_selection(long selectionIndex, long * startOffset
 */
 STDMETHODIMP CAccTextBase::get_text(long startOffset, long endOffset, BSTR * text)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (text == NULL)
@@ -496,6 +517,8 @@ STDMETHODIMP CAccTextBase::get_text(long startOffset, long endOffset, BSTR * tex
 */
 STDMETHODIMP CAccTextBase::get_textBeforeOffset(long offset, IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, BSTR * text)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -582,6 +605,8 @@ STDMETHODIMP CAccTextBase::get_textBeforeOffset(long offset, IA2TextBoundaryType
 */
 STDMETHODIMP CAccTextBase::get_textAfterOffset(long offset, IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, BSTR * text)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (startOffset == NULL || endOffset == NULL || text == NULL)
@@ -666,6 +691,8 @@ STDMETHODIMP CAccTextBase::get_textAfterOffset(long offset, IA2TextBoundaryType
 */
 STDMETHODIMP CAccTextBase::get_textAtOffset(long offset, IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, BSTR * text)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (startOffset == NULL || text == NULL ||endOffset == NULL)
@@ -748,6 +775,8 @@ STDMETHODIMP CAccTextBase::get_textAtOffset(long offset, IA2TextBoundaryType bou
 */
 STDMETHODIMP CAccTextBase::removeSelection(long selectionIndex)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK XInterface#
@@ -782,6 +811,8 @@ STDMETHODIMP CAccTextBase::removeSelection(long selectionIndex)
 */
 STDMETHODIMP CAccTextBase::setCaretOffset(long offset)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK XInterface#
@@ -805,6 +836,8 @@ STDMETHODIMP CAccTextBase::setCaretOffset(long offset)
 */
 STDMETHODIMP CAccTextBase::setSelection(long, long startOffset, long endOffset)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     // #CHECK XInterface#
@@ -827,6 +860,8 @@ STDMETHODIMP CAccTextBase::setSelection(long, long startOffset, long endOffset)
 */
 STDMETHODIMP CAccTextBase::get_nCharacters(long * nCharacters)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (nCharacters == NULL)
@@ -891,6 +926,8 @@ STDMETHODIMP CAccTextBase::scrollSubstringTo(long, long, IA2ScrollType)
 */
 STDMETHODIMP CAccTextBase::put_XInterface(hyper pXInterface)
 {
+    // internal IUNOXWrapper - no mutex meeded
+
     ENTER_PROTECTED_BLOCK
 
     CUNOXWrapper::put_XInterface(pXInterface);
diff --git a/winaccessibility/source/UAccCOM/AccValue.cxx b/winaccessibility/source/UAccCOM/AccValue.cxx
index c1781d2..28bc8c9 100644
--- a/winaccessibility/source/UAccCOM/AccValue.cxx
+++ b/winaccessibility/source/UAccCOM/AccValue.cxx
@@ -21,6 +21,9 @@
 #include "UAccCOM.h"
 #include "AccValue.h"
 #include "MAccessible.h"
+
+#include <vcl/svapp.hxx>
+
 #include <com/sun/star/accessibility/XAccessible.hpp>
 #include <com/sun/star/accessibility/XAccessibleContext.hpp>
 
@@ -35,6 +38,8 @@ using namespace com::sun::star::uno;
 
 STDMETHODIMP CAccValue::get_currentValue(VARIANT * currentValue)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (currentValue == NULL)
@@ -60,6 +65,8 @@ STDMETHODIMP CAccValue::get_currentValue(VARIANT * currentValue)
    */
 STDMETHODIMP CAccValue::setCurrentValue(VARIANT value)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if ( !pRXVal.is() )
@@ -138,6 +145,8 @@ STDMETHODIMP CAccValue::setCurrentValue(VARIANT value)
    */
 STDMETHODIMP CAccValue::get_maximumValue(VARIANT *maximumValue)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (maximumValue == NULL)
@@ -162,6 +171,8 @@ STDMETHODIMP CAccValue::get_maximumValue(VARIANT *maximumValue)
    */
 STDMETHODIMP CAccValue::get_minimumValue(VARIANT *mininumValue)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
     if (mininumValue == NULL)
@@ -186,7 +197,7 @@ STDMETHODIMP CAccValue::get_minimumValue(VARIANT *mininumValue)
    */
 STDMETHODIMP CAccValue::put_XInterface(hyper pXInterface)
 {
-
+    // internal IUNOXWrapper - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
 
diff --git a/winaccessibility/source/UAccCOM/EnumVariant.cxx b/winaccessibility/source/UAccCOM/EnumVariant.cxx
index 0d6793a..cf403fa 100644
--- a/winaccessibility/source/UAccCOM/EnumVariant.cxx
+++ b/winaccessibility/source/UAccCOM/EnumVariant.cxx
@@ -22,6 +22,7 @@
 #include "EnumVariant.h"
 #include "MAccessible.h"
 
+#include <vcl/svapp.hxx>
 
 using namespace com::sun::star::uno;
 using namespace com::sun::star::accessibility;
@@ -40,6 +41,8 @@ using namespace com::sun::star::accessibility;
    */
 HRESULT STDMETHODCALLTYPE CEnumVariant::Next(ULONG cElements,VARIANT __RPC_FAR *pvar,ULONG __RPC_FAR *pcElementFetched)
 {
+    SolarMutexGuard g;
+
     long l1;
     ULONG l2;
 
@@ -90,6 +93,8 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Next(ULONG cElements,VARIANT __RPC_FAR *
    */
 HRESULT STDMETHODCALLTYPE CEnumVariant::Skip(ULONG cElements)
 {
+    SolarMutexGuard g;
+
     m_lCurrent += cElements;
     if (m_lCurrent > (long)(m_lLBound+m_pXAccessibleSelection->getSelectedAccessibleChildCount()))
     {
@@ -108,6 +113,8 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Skip(ULONG cElements)
    */
 HRESULT STDMETHODCALLTYPE CEnumVariant::Reset( void)
 {
+    SolarMutexGuard g;
+
     m_lCurrent = m_lLBound;
     return NOERROR;
 }
@@ -123,6 +130,8 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Reset( void)
    */
 HRESULT STDMETHODCALLTYPE CEnumVariant::Clone(IEnumVARIANT __RPC_FAR *__RPC_FAR *ppenum)
 {
+    SolarMutexGuard g;
+
     CEnumVariant * penum = NULL;
     HRESULT hr;
     if (ppenum == NULL)
@@ -151,6 +160,8 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Clone(IEnumVARIANT __RPC_FAR *__RPC_FAR
    */
 HRESULT STDMETHODCALLTYPE CEnumVariant::Create(CEnumVariant __RPC_FAR *__RPC_FAR *ppenum)
 {
+    SolarMutexGuard g;
+
     HRESULT hr = createInstance<CEnumVariant>(IID_IEnumVariant, ppenum);
     if (S_OK != hr)
     {
@@ -179,6 +190,8 @@ long CEnumVariant::GetCountOfElements()
    */
 STDMETHODIMP CEnumVariant::ClearEnumeration()
 {
+    // internal IEnumVariant - no mutex meeded
+
     pUNOInterface = NULL;
     m_pXAccessibleSelection = NULL;
     m_lCurrent = m_lLBound;
@@ -216,6 +229,8 @@ static Reference<XAccessibleSelection> GetXAccessibleSelection(XAccessible* pXAc
    */
 STDMETHODIMP CEnumVariant::PutSelection(hyper pXSelection)
 {
+    // internal IEnumVariant - no mutex meeded
+
     pUNOInterface = reinterpret_cast<XAccessible*>(pXSelection);
     m_pXAccessibleSelection = GetXAccessibleSelection(pUNOInterface);
     return S_OK;
diff --git a/winaccessibility/source/UAccCOM/MAccessible.cxx b/winaccessibility/source/UAccCOM/MAccessible.cxx
index d9ff89c..82fb41a 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.cxx
+++ b/winaccessibility/source/UAccCOM/MAccessible.cxx
@@ -33,6 +33,8 @@
 #include "AccHypertext.h"
 #include "AccHyperLink.h"
 
+#include <vcl/svapp.hxx>
+
 #include <com/sun/star/accessibility/XAccessibleText.hpp>
 #include <com/sun/star/accessibility/XAccessibleEditableText.hpp>
 #include <com/sun/star/accessibility/XAccessibleImage.hpp>
@@ -243,6 +245,8 @@ m_bRequiresSave(FALSE)
 
 CMAccessible::~CMAccessible()
 {
+    SolarMutexGuard g;
+
     if(m_pszName!=NULL)
     {
         SAFE_SYSFREESTRING(m_pszName);
@@ -284,6 +288,8 @@ CMAccessible::~CMAccessible()
 */
 STDMETHODIMP CMAccessible::get_accParent(IDispatch **ppdispParent)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -319,6 +325,8 @@ STDMETHODIMP CMAccessible::get_accParent(IDispatch **ppdispParent)
 */
 STDMETHODIMP CMAccessible::get_accChildCount(long *pcountChildren)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -351,6 +359,8 @@ STDMETHODIMP CMAccessible::get_accChildCount(long *pcountChildren)
 */
 STDMETHODIMP CMAccessible::get_accChild(VARIANT varChild, IDispatch **ppdispChild)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -385,6 +395,8 @@ STDMETHODIMP CMAccessible::get_accChild(VARIANT varChild, IDispatch **ppdispChil
 */
 STDMETHODIMP CMAccessible::get_accName(VARIANT varChild, BSTR *pszName)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -422,6 +434,8 @@ STDMETHODIMP CMAccessible::get_accName(VARIANT varChild, BSTR *pszName)
 */
 STDMETHODIMP CMAccessible::get_accValue(VARIANT varChild, BSTR *pszValue)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -465,6 +479,8 @@ STDMETHODIMP CMAccessible::get_accValue(VARIANT varChild, BSTR *pszValue)
 */
 STDMETHODIMP CMAccessible::get_accDescription(VARIANT varChild, BSTR *pszDescription)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -502,6 +518,8 @@ STDMETHODIMP CMAccessible::get_accDescription(VARIANT varChild, BSTR *pszDescrip
 */
 STDMETHODIMP CMAccessible::get_accRole(VARIANT varChild, VARIANT *pvarRole)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -551,6 +569,8 @@ STDMETHODIMP CMAccessible::get_accRole(VARIANT varChild, VARIANT *pvarRole)
 */
 STDMETHODIMP CMAccessible::get_accState(VARIANT varChild, VARIANT *pvarState)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -653,6 +673,8 @@ static void GetMnemonicChar( const ::rtl::OUString& aStr, WCHAR* wStr)
 */
 STDMETHODIMP CMAccessible::get_accKeyboardShortcut(VARIANT varChild, BSTR *pszKeyboardShortcut)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
 
         ISDESTROY()
@@ -806,6 +828,8 @@ STDMETHODIMP CMAccessible::get_accKeyboardShortcut(VARIANT varChild, BSTR *pszKe
 */
 STDMETHODIMP CMAccessible::get_accFocus(VARIANT *pvarChild)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -843,6 +867,8 @@ STDMETHODIMP CMAccessible::get_accFocus(VARIANT *pvarChild)
 */
 STDMETHODIMP CMAccessible::get_accSelection(VARIANT *pvarChildren)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -890,6 +916,8 @@ STDMETHODIMP CMAccessible::get_accSelection(VARIANT *pvarChildren)
 */
 STDMETHODIMP CMAccessible::accLocation(long *pxLeft, long *pyTop, long *pcxWidth, long *pcyHeight, VARIANT varChild)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -946,6 +974,8 @@ STDMETHODIMP CMAccessible::accLocation(long *pxLeft, long *pyTop, long *pcxWidth
 */
 STDMETHODIMP CMAccessible::accNavigate(long navDir, VARIANT varStart, VARIANT *pvarEndUpAt)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -986,6 +1016,8 @@ STDMETHODIMP CMAccessible::accNavigate(long navDir, VARIANT varStart, VARIANT *p
 
 STDMETHODIMP CMAccessible::accHitTest(long xLeft, long yTop, VARIANT *pvarChild)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -1059,6 +1091,7 @@ STDMETHODIMP CMAccessible::QueryService(REFGUID guidService, REFIID riid, void**
 */
 STDMETHODIMP CMAccessible::put_accName(VARIANT varChild, BSTR szName)
 {
+    SolarMutexGuard g;
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -1092,6 +1125,7 @@ STDMETHODIMP CMAccessible::put_accName(VARIANT varChild, BSTR szName)
 */
 STDMETHODIMP CMAccessible::put_accValue(VARIANT varChild, BSTR szValue)
 {
+    SolarMutexGuard g;
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -1123,6 +1157,7 @@ STDMETHODIMP CMAccessible::put_accValue(VARIANT varChild, BSTR szValue)
 */
 STDMETHODIMP CMAccessible::Put_XAccName(const OLECHAR __RPC_FAR *pszName)
 {
+    // internal IMAccessible - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -1148,6 +1183,8 @@ STDMETHODIMP CMAccessible::Put_XAccName(const OLECHAR __RPC_FAR *pszName)
 */
 STDMETHODIMP CMAccessible::Put_XAccRole(unsigned short pRole)
 {
+    // internal IMAccessible - no mutex meeded
+
     m_iRole = pRole;
     return S_OK;
 }
@@ -1159,6 +1196,8 @@ STDMETHODIMP CMAccessible::Put_XAccRole(unsigned short pRole)
 */
 STDMETHODIMP CMAccessible::DecreaseState(DWORD pXSate)
 {
+    // internal IMAccessible - no mutex meeded
+
     m_dState &= (~pXSate);
     return S_OK;
 }
@@ -1170,6 +1209,8 @@ STDMETHODIMP CMAccessible::DecreaseState(DWORD pXSate)
 */
 STDMETHODIMP CMAccessible::IncreaseState(DWORD pXSate)
 {
+    // internal IMAccessible - no mutex meeded
+
     m_dState |= pXSate;
     return S_OK;
 }
@@ -1181,6 +1222,8 @@ STDMETHODIMP CMAccessible::IncreaseState(DWORD pXSate)
 */
 STDMETHODIMP CMAccessible::SetState(DWORD pXSate)
 {
+    // internal IMAccessible - no mutex meeded
+
     m_dState = pXSate;
     return S_OK;
 }
@@ -1194,6 +1237,7 @@ STDMETHODIMP CMAccessible::SetState(DWORD pXSate)
 */
 STDMETHODIMP CMAccessible::Put_XAccDescription(const OLECHAR __RPC_FAR *pszDescription)
 {
+    // internal IMAccessible - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -1220,6 +1264,7 @@ STDMETHODIMP CMAccessible::Put_XAccDescription(const OLECHAR __RPC_FAR *pszDescr
 */
 STDMETHODIMP CMAccessible::Put_XAccValue(const OLECHAR __RPC_FAR *pszAccValue)
 {
+    // internal IMAccessible - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -1245,6 +1290,7 @@ STDMETHODIMP CMAccessible::Put_XAccValue(const OLECHAR __RPC_FAR *pszAccValue)
 */
 STDMETHODIMP CMAccessible::Put_XAccWindowHandle(HWND hwnd)
 {
+    // internal IMAccessible - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -1261,6 +1307,7 @@ STDMETHODIMP CMAccessible::Put_XAccWindowHandle(HWND hwnd)
 */
 STDMETHODIMP CMAccessible::Put_XAccFocus(long dChildID)
 {
+    // internal IMAccessible - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -1294,6 +1341,7 @@ STDMETHODIMP CMAccessible::Put_XAccFocus(long dChildID)
 */
 STDMETHODIMP CMAccessible::Put_XAccLocation(const Location sLocation)
 {
+    // internal IMAccessible - no mutex meeded
 
     this->m_sLocation = sLocation;
     return S_OK;
@@ -1307,6 +1355,8 @@ STDMETHODIMP CMAccessible::Put_XAccLocation(const Location sLocation)
 */
 STDMETHODIMP CMAccessible::Put_XAccParent(IMAccessible __RPC_FAR *pIParent)
 {
+    // internal IMAccessible - no mutex meeded
+
     this->m_pIParent = pIParent;
 
     if(pIParent)
@@ -1322,6 +1372,7 @@ STDMETHODIMP CMAccessible::Put_XAccParent(IMAccessible __RPC_FAR *pIParent)
 */
 STDMETHODIMP CMAccessible::Put_XAccChildID(long dChildID)
 {
+    // internal IMAccessible - no mutex meeded
 
     this->m_dChildID = dChildID;
     return S_OK;
@@ -1334,6 +1385,8 @@ STDMETHODIMP CMAccessible::Put_XAccChildID(long dChildID)
 */
 STDMETHODIMP CMAccessible::Put_XAccAgent(hyper pAgent)
 {
+    // internal IMAccessible - no mutex meeded
+
     g_pAgent = reinterpret_cast<AccObjectManagerAgent*>(pAgent);
     return S_OK;
 }
@@ -1347,6 +1400,7 @@ STDMETHODIMP CMAccessible::Put_XAccAgent(hyper pAgent)
 */
 STDMETHODIMP CMAccessible::NotifyDestroy(BOOL isDestroy)
 {
+    // internal IMAccessible - no mutex meeded
 
     m_isDestroy = isDestroy;
     m_xAccessible.clear();
@@ -1650,6 +1704,8 @@ HRESULT CMAccessible::GetPreSibling(VARIANT varStart,VARIANT* pvarEndUpAt)
 */
 STDMETHODIMP CMAccessible::get_nRelations( long __RPC_FAR *nRelations)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
 
         // #CHECK#
@@ -1678,6 +1734,8 @@ STDMETHODIMP CMAccessible::get_nRelations( long __RPC_FAR *nRelations)
 
 STDMETHODIMP CMAccessible::get_relation( long relationIndex, IAccessibleRelation __RPC_FAR *__RPC_FAR *relation)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -1739,6 +1797,8 @@ STDMETHODIMP CMAccessible::get_relation( long relationIndex, IAccessibleRelation
 
 STDMETHODIMP CMAccessible::get_relations( long, IAccessibleRelation __RPC_FAR *__RPC_FAR *relation, long __RPC_FAR *nRelations)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
 
         // #CHECK#
@@ -1797,6 +1857,8 @@ STDMETHODIMP CMAccessible::get_relations( long, IAccessibleRelation __RPC_FAR *_
 
 STDMETHODIMP CMAccessible::role(long __RPC_FAR *role)
 {
+    SolarMutexGuard g;
+
     ENTER_PROTECTED_BLOCK
 
         (*role) = m_iRole;
@@ -1809,6 +1871,7 @@ STDMETHODIMP CMAccessible::role(long __RPC_FAR *role)
 
 STDMETHODIMP CMAccessible:: get_nActions(long __RPC_FAR *nActions)
 {
+    SolarMutexGuard g;
 
     try
     {
@@ -1881,6 +1944,8 @@ static XAccessible* getTheParentOfMember(XAccessible* pXAcc)
 
 STDMETHODIMP CMAccessible:: get_groupPosition(long __RPC_FAR *groupLevel,long __RPC_FAR *similarItemsInGroup,long __RPC_FAR *positionInGroup)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         // #CHECK#
@@ -2066,6 +2131,7 @@ STDMETHODIMP CMAccessible:: get_extendedStates( long, BSTR __RPC_FAR *__RPC_FAR
 
 STDMETHODIMP CMAccessible:: get_uniqueID(long __RPC_FAR *uniqueID)
 {
+    SolarMutexGuard g;
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -2082,6 +2148,7 @@ STDMETHODIMP CMAccessible:: get_uniqueID(long __RPC_FAR *uniqueID)
 
 STDMETHODIMP CMAccessible:: get_windowHandle(HWND __RPC_FAR *windowHandle)
 {
+    SolarMutexGuard g;
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -2260,6 +2327,8 @@ HRESULT CMAccessible::DeSelectMutipleChildren( XAccessible** pItem,int size )
 */
 STDMETHODIMP CMAccessible::SetXAccessible(hyper pXAcc)
 {
+    // internal IMAccessible - no mutex meeded
+
     m_xAccessible = reinterpret_cast<XAccessible*>(pXAcc);
     m_pEnumVar->PutSelection(/*XAccessibleSelection*/
             reinterpret_cast<hyper>(m_xAccessible.get()));
@@ -2280,6 +2349,8 @@ STDMETHODIMP CMAccessible::SetXAccessible(hyper pXAcc)
 */
 STDMETHODIMP CMAccessible::accSelect(long flagsSelect, VARIANT varChild)
 {
+    SolarMutexGuard g;
+
         ENTER_PROTECTED_BLOCK
         ISDESTROY()
         if( (flagsSelect&SELFLAG_ADDSELECTION) &&
@@ -2372,7 +2443,8 @@ STDMETHODIMP CMAccessible::accSelect(long flagsSelect, VARIANT varChild)
 */
 STDMETHODIMP CMAccessible::GetUNOInterface(hyper * pXAcc)
 {
-    // #CHECK#
+    // internal IMAccessible - no mutex meeded
+
     if(pXAcc == NULL)
         return E_INVALIDARG;
 
@@ -2387,6 +2459,8 @@ STDMETHODIMP CMAccessible::GetUNOInterface(hyper * pXAcc)
 */
 STDMETHODIMP CMAccessible::SetDefaultAction(hyper pAction)
 {
+    // internal IMAccessible - no mutex meeded
+
     m_xAction = reinterpret_cast<XAccessibleAction*>(pAction);
     return S_OK;
 }
@@ -2400,6 +2474,7 @@ STDMETHODIMP CMAccessible::SetDefaultAction(hyper pAction)
 */
 HRESULT STDMETHODCALLTYPE CMAccessible::get_accDefaultAction(VARIANT varChild, BSTR *pszDefaultAction)
 {
+    SolarMutexGuard g;
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -2438,6 +2513,7 @@ HRESULT STDMETHODCALLTYPE CMAccessible::get_accDefaultAction(VARIANT varChild, B
 */
 HRESULT STDMETHODCALLTYPE CMAccessible::accDoDefaultAction(VARIANT varChild)
 {
+    SolarMutexGuard g;
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -2472,6 +2548,7 @@ HRESULT STDMETHODCALLTYPE CMAccessible::accDoDefaultAction(VARIANT varChild)
 */
 STDMETHODIMP CMAccessible::Put_ActionDescription( const OLECHAR* szAction)
 {
+    // internal IMAccessible - no mutex meeded
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -2590,6 +2667,8 @@ HRESULT WINAPI CMAccessible::SmartQI(void* /*pv*/, REFIID iid, void** ppvObject)
     {
         if (InlineIsEqualGUID(iid, *pMap->piid))
         {
+            SolarMutexGuard g;
+
             XInterface* pXI = NULL;
             BOOL bFound = GetXInterfaceFromXAccessible(m_xAccessible.get(),
                                 &pXI, pMap->XIFIndex);
@@ -3029,7 +3108,8 @@ void CMAccessible::ConvertAnyToVariant(const ::com::sun::star::uno::Any &rAnyVal
 
 STDMETHODIMP CMAccessible::Get_XAccChildID(long* childID)
 {
-    // #CHECK#
+    // internal IMAccessible - no mutex meeded
+
     if(childID == NULL)
     {
         return E_FAIL;
@@ -3037,10 +3117,13 @@ STDMETHODIMP CMAccessible::Get_XAccChildID(long* childID)
     *childID = m_dChildID;
     return S_OK;
 }
+
 STDMETHODIMP CMAccessible:: get_states(AccessibleStates __RPC_FAR *states )
 {
-        ENTER_PROTECTED_BLOCK
-        ISDESTROY()
+    SolarMutexGuard g;
+
+    ENTER_PROTECTED_BLOCK
+    ISDESTROY()
 
     if (!m_xContext.is())
         return E_FAIL;
@@ -3207,6 +3290,7 @@ DWORD GetMSAAStateFromUNO(short xState)
 
 STDMETHODIMP CMAccessible:: get_appName( BSTR __RPC_FAR *name)
 {
+    SolarMutexGuard g;
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -3219,6 +3303,7 @@ STDMETHODIMP CMAccessible:: get_appName( BSTR __RPC_FAR *name)
 }
 STDMETHODIMP CMAccessible:: get_appVersion(BSTR __RPC_FAR *version)
 {
+    SolarMutexGuard g;
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -3230,6 +3315,7 @@ STDMETHODIMP CMAccessible:: get_appVersion(BSTR __RPC_FAR *version)
 }
 STDMETHODIMP CMAccessible:: get_toolkitName(BSTR __RPC_FAR *name)
 {
+    SolarMutexGuard g;
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -3241,6 +3327,7 @@ STDMETHODIMP CMAccessible:: get_toolkitName(BSTR __RPC_FAR *name)
 }
 STDMETHODIMP CMAccessible:: get_toolkitVersion(BSTR __RPC_FAR *version)
 {
+    SolarMutexGuard g;
 
     ENTER_PROTECTED_BLOCK
         ISDESTROY()
@@ -3254,6 +3341,8 @@ STDMETHODIMP CMAccessible:: get_toolkitVersion(BSTR __RPC_FAR *version)
 
 STDMETHODIMP CMAccessible::get_attributes(/*[out]*/ BSTR *pAttr)
 {
+    SolarMutexGuard g;
+
     Reference<XAccessibleContext> pRContext = m_xAccessible->getAccessibleContext();
     if( !pRContext.is() )
     {
diff --git a/winaccessibility/source/UAccCOM/MAccessible.h b/winaccessibility/source/UAccCOM/MAccessible.h
index 98274a1..a6ddba3 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.h
+++ b/winaccessibility/source/UAccCOM/MAccessible.h
@@ -20,7 +20,6 @@
 #ifndef INCLUDED_WINACCESSIBILITY_SOURCE_UACCCOM_MACCESSIBLE_H
 #define INCLUDED_WINACCESSIBILITY_SOURCE_UACCCOM_MACCESSIBLE_H
 
-#include <windows.h>
 #include "resource.h"       // main symbols
 #include <map>
 #include <com/sun/star/accessibility/XAccessible.hpp>
diff --git a/winaccessibility/source/UAccCOM/stdafx.h b/winaccessibility/source/UAccCOM/stdafx.h
index b1b0ee3..66019e2 100644
--- a/winaccessibility/source/UAccCOM/stdafx.h
+++ b/winaccessibility/source/UAccCOM/stdafx.h
@@ -30,11 +30,17 @@
 
 //#define _ATL_APARTMENT_THREADED
 
+#include <prewin.h>
+#include <windows.h>
+
 #include <atlbase.h>
 // You may derive a class from CComModule and use it if you want to override
 // something, but do not change the name of _Module
 extern CComModule _Module;
 #include <atlcom.h>
+#include <postwin.h>
+#undef OPAQUE
+
 
 #define ENTER_PROTECTED_BLOCK   \
     try                         \
@@ -49,9 +55,6 @@ extern CComModule _Module;
 
 #define SAFE_SYSFREESTRING(x) { ::SysFreeString(x); x=NULL; }
 
-#include <windows.h>
-#undef OPAQUE
-
 //{{AFX_INSERT_LOCATION}}
 // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
 
commit f5a54cbf120efb335205e00ba18a9038449b92c9
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Dec 11 18:47:17 2013 +0100

    prewin.h: remove silly extern "C" nonsense which prevents...
    
    ... using prewin.h/postwin.h around ATL headers.  Also remove some other
    cruft while at it.
    
    Change-Id: I7d081dae88273dfd214ef078f5844ce266e388fb

diff --git a/include/postwin.h b/include/postwin.h
index 71b85ea..86f27ad 100644
--- a/include/postwin.h
+++ b/include/postwin.h
@@ -19,12 +19,6 @@
 
 /* nicht geschuetz, muss als gegenstueck zu prewin.h includet werden */
 
-#ifdef WNT
-#ifdef __cplusplus
-}
-#endif
-#endif
-
 #undef Region
 #undef PolyPolygon
 #undef Polygon
@@ -228,16 +222,11 @@
 #define STRETCH_DELETESCANS     3
 #endif
 
-#ifdef WNT
 extern "C"
 {
 BOOL WINAPI WIN_Rectangle( HDC hDC, int X1, int Y1, int X2, int Y2 );
 BOOL WINAPI WIN_Polygon( HDC hDC, CONST POINT * ppt, int ncnt );
 BOOL WINAPI WIN_PolyPolygon( HDC hDC, CONST POINT * ppt, LPINT npcnt, int ncnt );
 }
-#endif
-
-// svwin.h nicht mehr includen
-#define _SVWIN_H
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/prewin.h b/include/prewin.h
index e98b901..a30afb8 100644
--- a/include/prewin.h
+++ b/include/prewin.h
@@ -28,10 +28,6 @@
 #define Folder       WIN_Folder
 #define GradientStyle_RECT  WIN_GradientStyle_RECT
 
-#ifdef __cplusplus
-extern "C" {
-#endif
-
 #if !defined STRICT
 #define STRICT
 #endif
commit 57f88bb76b069e0776574e93d3009785572b8193
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Dec 11 15:09:58 2013 +0100

    winaccessibility: drop icu externals, probably some copypasta
    
    Change-Id: Ife0960b235e24f17640b197f952a9a094b7d654d

diff --git a/winaccessibility/Library_uacccom.mk b/winaccessibility/Library_uacccom.mk
index 6c81dcb..750d41c 100644
--- a/winaccessibility/Library_uacccom.mk
+++ b/winaccessibility/Library_uacccom.mk
@@ -60,8 +60,6 @@ $(eval $(call gb_Library_use_libraries,UAccCOM,\
 
 $(eval $(call gb_Library_use_externals,UAccCOM,\
 	boost_headers \
-	icuuc \
-	icui18n \
 ))
 
 $(eval $(call gb_Library_use_system_win32_libs,UAccCOM,\
commit dd7df93417c8169d7f2ee935841fa72ad02dbcc9
Author: Michael Stahl <mstahl at redhat.com>
Date:   Tue Dec 3 21:51:20 2013 +0100

    winaccessibility: remove CheckEnableAccessible.h and assorted noise
    
    Change-Id: I45e1d72b1abf64a965397c50ac3b95b5bbee3206

diff --git a/winaccessibility/source/UAccCOM/AccActionBase.cxx b/winaccessibility/source/UAccCOM/AccActionBase.cxx
index d23b126..189f3b6 100644
--- a/winaccessibility/source/UAccCOM/AccActionBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccActionBase.cxx
@@ -107,9 +107,6 @@ void GetDfActionByUNORole(XAccessibleContext* pRContext, BSTR* pRet)
  */
 STDMETHODIMP CAccActionBase::nActions(/*[out,retval]*/long* nActions)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -132,9 +129,6 @@ STDMETHODIMP CAccActionBase::nActions(/*[out,retval]*/long* nActions)
  */
 STDMETHODIMP CAccActionBase::doAction(/* [in] */ long actionIndex)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if( pRXAct.is() )
@@ -154,9 +148,6 @@ STDMETHODIMP CAccActionBase::doAction(/* [in] */ long actionIndex)
  */
 STDMETHODIMP CAccActionBase::get_description(long actionIndex,BSTR __RPC_FAR *description)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -204,9 +195,6 @@ STDMETHODIMP CAccActionBase::get_keyBinding(
     /* [length_is][length_is][size_is][size_is][out] */ BSTR __RPC_FAR *__RPC_FAR *keyBinding,
     /* [retval][out] */ long __RPC_FAR *nBinding)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if( !keyBinding || !nBinding)
diff --git a/winaccessibility/source/UAccCOM/AccComponentBase.cxx b/winaccessibility/source/UAccCOM/AccComponentBase.cxx
index 666faf2..92efe7f 100644
--- a/winaccessibility/source/UAccCOM/AccComponentBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccComponentBase.cxx
@@ -45,9 +45,6 @@ CAccComponentBase::~CAccComponentBase()
  */
 STDMETHODIMP CAccComponentBase::get_locationInParent(long *x, long *y)
 {
-
-    CHECK_ENABLE_INF
-
     try
     {
         if (x == NULL || y == NULL)
@@ -76,9 +73,6 @@ STDMETHODIMP CAccComponentBase::get_locationInParent(long *x, long *y)
  */
 STDMETHODIMP CAccComponentBase::get_locationOnScreen(long *x, long *y)
 {
-
-    CHECK_ENABLE_INF
-
     try
     {
         if (x == NULL || y == NULL)
@@ -106,9 +100,6 @@ STDMETHODIMP CAccComponentBase::get_locationOnScreen(long *x, long *y)
  */
 STDMETHODIMP CAccComponentBase::grabFocus(boolean * success)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (success == NULL)
@@ -133,9 +124,6 @@ STDMETHODIMP CAccComponentBase::grabFocus(boolean * success)
  */
 STDMETHODIMP CAccComponentBase::get_foreground(IA2Color * foreground)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (foreground == NULL)
@@ -159,9 +147,6 @@ STDMETHODIMP CAccComponentBase::get_foreground(IA2Color * foreground)
  */
 STDMETHODIMP CAccComponentBase::get_background(IA2Color * background)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (background == NULL)
@@ -185,9 +170,6 @@ STDMETHODIMP CAccComponentBase::get_background(IA2Color * background)
  */
 STDMETHODIMP CAccComponentBase::put_XInterface(hyper pXInterface)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     CUNOXWrapper::put_XInterface(pXInterface);
diff --git a/winaccessibility/source/UAccCOM/AccEditableText.cxx b/winaccessibility/source/UAccCOM/AccEditableText.cxx
index 3514ab9..f4de426 100644
--- a/winaccessibility/source/UAccCOM/AccEditableText.cxx
+++ b/winaccessibility/source/UAccCOM/AccEditableText.cxx
@@ -47,9 +47,6 @@ using namespace std;
  */
 STDMETHODIMP CAccEditableText::copyText(long startOffset, long endOffset)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK XInterface#
@@ -75,9 +72,6 @@ STDMETHODIMP CAccEditableText::copyText(long startOffset, long endOffset)
  */
 STDMETHODIMP CAccEditableText::deleteText(long startOffset, long endOffset)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if( !pRXEdtTxt.is() )
@@ -100,9 +94,6 @@ STDMETHODIMP CAccEditableText::deleteText(long startOffset, long endOffset)
  */
 STDMETHODIMP CAccEditableText::insertText(long offset, BSTR * text)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (text == NULL)
@@ -130,9 +121,6 @@ STDMETHODIMP CAccEditableText::insertText(long offset, BSTR * text)
  */
 STDMETHODIMP CAccEditableText::cutText(long startOffset, long endOffset)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if( !pRXEdtTxt.is() )
@@ -154,9 +142,6 @@ STDMETHODIMP CAccEditableText::cutText(long startOffset, long endOffset)
  */
 STDMETHODIMP CAccEditableText::pasteText(long offset)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if( !pRXEdtTxt.is() )
@@ -180,9 +165,6 @@ STDMETHODIMP CAccEditableText::pasteText(long offset)
  */
 STDMETHODIMP CAccEditableText::replaceText(long startOffset, long endOffset, BSTR * text)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -210,9 +192,6 @@ STDMETHODIMP CAccEditableText::replaceText(long startOffset, long endOffset, BST
  */
 STDMETHODIMP CAccEditableText::setAttributes(long startOffset, long endOffset, BSTR * attributes)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
diff --git a/winaccessibility/source/UAccCOM/AccHyperLink.cxx b/winaccessibility/source/UAccCOM/AccHyperLink.cxx
index 7944cc6..3f86f66 100644
--- a/winaccessibility/source/UAccCOM/AccHyperLink.cxx
+++ b/winaccessibility/source/UAccCOM/AccHyperLink.cxx
@@ -102,9 +102,6 @@ STDMETHODIMP CAccHyperLink::get_keyBinding(
 STDMETHODIMP CAccHyperLink::get_anchor(/* [in] */ long index,
         /* [retval][out] */ VARIANT __RPC_FAR *anchor)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -135,9 +132,6 @@ STDMETHODIMP CAccHyperLink::get_anchor(/* [in] */ long index,
 STDMETHODIMP CAccHyperLink::get_anchorTarget(/* [in] */ long index,
         /* [retval][out] */ VARIANT __RPC_FAR *anchorTarget)
 {
-
-
-    CHECK_ENABLE_INF
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -168,9 +162,6 @@ STDMETHODIMP CAccHyperLink::get_anchorTarget(/* [in] */ long index,
 */
 STDMETHODIMP CAccHyperLink::get_startIndex(/* [retval][out] */ long __RPC_FAR *index)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -192,9 +183,6 @@ STDMETHODIMP CAccHyperLink::get_startIndex(/* [retval][out] */ long __RPC_FAR *i
 */
 STDMETHODIMP CAccHyperLink::get_endIndex(/* [retval][out] */ long __RPC_FAR *index)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -221,9 +209,6 @@ STDMETHODIMP CAccHyperLink::get_endIndex(/* [retval][out] */ long __RPC_FAR *ind
 */
 STDMETHODIMP CAccHyperLink::get_valid(/* [retval][out] */ boolean __RPC_FAR *valid)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -250,9 +235,6 @@ STDMETHODIMP CAccHyperLink::get_valid(/* [retval][out] */ boolean __RPC_FAR *val
 */
 STDMETHODIMP CAccHyperLink::put_XInterface(hyper pXInterface)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     CAccActionBase::put_XInterface(pXInterface);
@@ -284,9 +266,6 @@ STDMETHODIMP CAccHyperLink::put_XInterface(hyper pXInterface)
 */
 STDMETHODIMP CAccHyperLink::put_XSubInterface(hyper pXSubInterface)
 {
-
-    CHECK_ENABLE_INF
-
     pRXLink = reinterpret_cast<XAccessibleHyperlink*>(pXSubInterface);
     pRXAct = reinterpret_cast<XAccessibleAction*>(pXSubInterface);
 
diff --git a/winaccessibility/source/UAccCOM/AccHypertext.cxx b/winaccessibility/source/UAccCOM/AccHypertext.cxx
index 40e14d2..eeb8e02 100644
--- a/winaccessibility/source/UAccCOM/AccHypertext.cxx
+++ b/winaccessibility/source/UAccCOM/AccHypertext.cxx
@@ -276,9 +276,6 @@ STDMETHODIMP CAccHypertext::scrollSubstringTo(long startIndex, long endIndex,enu
 */
 STDMETHODIMP CAccHypertext::get_nHyperlinks(long *hyperlinkCount)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -304,9 +301,6 @@ STDMETHODIMP CAccHypertext::get_nHyperlinks(long *hyperlinkCount)
 */
 STDMETHODIMP CAccHypertext::get_hyperlink(long index,IAccessibleHyperlink **hyperlink)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -353,9 +347,6 @@ STDMETHODIMP CAccHypertext::get_hyperlink(long index,IAccessibleHyperlink **hype
 */
 STDMETHODIMP CAccHypertext::get_hyperlinkIndex(long charIndex, long *hyperlinkIndex)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
diff --git a/winaccessibility/source/UAccCOM/AccImage.cxx b/winaccessibility/source/UAccCOM/AccImage.cxx
index 49f4033..8ca1010 100644
--- a/winaccessibility/source/UAccCOM/AccImage.cxx
+++ b/winaccessibility/source/UAccCOM/AccImage.cxx
@@ -33,9 +33,6 @@ using namespace com::sun::star::uno;
 */
 STDMETHODIMP CAccImage::get_description(BSTR * description)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
diff --git a/winaccessibility/source/UAccCOM/AccRelation.cxx b/winaccessibility/source/UAccCOM/AccRelation.cxx
index 32721e0..68b0958 100644
--- a/winaccessibility/source/UAccCOM/AccRelation.cxx
+++ b/winaccessibility/source/UAccCOM/AccRelation.cxx
@@ -34,9 +34,6 @@ using namespace com::sun::star::uno;
 */
 STDMETHODIMP CAccRelation::get_relationType(BSTR * relationType)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (relationType == NULL)
@@ -70,11 +67,8 @@ STDMETHODIMP CAccRelation::get_localizedRelationType(BSTR *)
 */
 STDMETHODIMP CAccRelation::get_nTargets(long * nTargets)
 {
-
-
     ENTER_PROTECTED_BLOCK
 
-    CHECK_ENABLE_INF
     if (nTargets == NULL)
         return E_INVALIDARG;
 
@@ -93,9 +87,6 @@ STDMETHODIMP CAccRelation::get_nTargets(long * nTargets)
 */
 STDMETHODIMP CAccRelation::get_target(long targetIndex, IUnknown * * target)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (target == NULL)
@@ -131,9 +122,6 @@ STDMETHODIMP CAccRelation::get_target(long targetIndex, IUnknown * * target)
 */
 STDMETHODIMP CAccRelation::get_targets(long, IUnknown * * target, long * nTargets)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
diff --git a/winaccessibility/source/UAccCOM/AccTable.cxx b/winaccessibility/source/UAccCOM/AccTable.cxx
index 095b56b..cb93934 100644
--- a/winaccessibility/source/UAccCOM/AccTable.cxx
+++ b/winaccessibility/source/UAccCOM/AccTable.cxx
@@ -43,9 +43,6 @@ using namespace com::sun::star::uno;
 
 STDMETHODIMP CAccTable::get_accessibleAt(long row, long column, IUnknown * * accessible)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -115,9 +112,6 @@ STDMETHODIMP CAccTable::get_caption(IUnknown * *)
   */
 STDMETHODIMP CAccTable::get_columnDescription(long column, BSTR * description)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -149,9 +143,6 @@ STDMETHODIMP CAccTable::get_columnDescription(long column, BSTR * description)
   */
 STDMETHODIMP CAccTable::get_columnExtentAt(long row, long column, long * nColumnsSpanned)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     XAccessibleTable    *pXAccTable = GetXInterface();
@@ -183,9 +174,6 @@ STDMETHODIMP CAccTable::get_columnExtentAt(long row, long column, long * nColumn
   */
 STDMETHODIMP CAccTable::get_columnHeader(IAccessibleTable __RPC_FAR *__RPC_FAR *accessibleTable, long *startingRowIndex)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -234,9 +222,6 @@ STDMETHODIMP CAccTable::get_columnHeader(IAccessibleTable __RPC_FAR *__RPC_FAR *
   */
 STDMETHODIMP CAccTable::get_nColumns(long * columnCount)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -260,9 +245,6 @@ STDMETHODIMP CAccTable::get_nColumns(long * columnCount)
   */
 STDMETHODIMP CAccTable::get_nRows(long * rowCount)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -286,9 +268,6 @@ STDMETHODIMP CAccTable::get_nRows(long * rowCount)
   */
 STDMETHODIMP CAccTable::get_nSelectedColumns(long * columnCount)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -313,9 +292,6 @@ STDMETHODIMP CAccTable::get_nSelectedColumns(long * columnCount)
   */
 STDMETHODIMP CAccTable::get_nSelectedRows(long * rowCount)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -341,9 +317,6 @@ STDMETHODIMP CAccTable::get_nSelectedRows(long * rowCount)
   */
 STDMETHODIMP CAccTable::get_rowDescription(long row, BSTR * description)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -376,9 +349,6 @@ STDMETHODIMP CAccTable::get_rowDescription(long row, BSTR * description)
   */
 STDMETHODIMP CAccTable::get_rowExtentAt(long row, long column, long * nRowsSpanned)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     XAccessibleTable    *pXAccTable = GetXInterface();
@@ -411,9 +381,6 @@ STDMETHODIMP CAccTable::get_rowExtentAt(long row, long column, long * nRowsSpann
   */
 STDMETHODIMP CAccTable::get_rowHeader(IAccessibleTable __RPC_FAR *__RPC_FAR *accessibleTable, long *startingColumnIndex)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -464,9 +431,6 @@ STDMETHODIMP CAccTable::get_rowHeader(IAccessibleTable __RPC_FAR *__RPC_FAR *acc
   */
 STDMETHODIMP CAccTable::get_selectedRows(long, long ** rows, long * nRows)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -504,9 +468,6 @@ STDMETHODIMP CAccTable::get_selectedRows(long, long ** rows, long * nRows)
   */
 STDMETHODIMP CAccTable::get_selectedColumns(long, long ** columns, long * numColumns)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -542,9 +503,6 @@ STDMETHODIMP CAccTable::get_selectedColumns(long, long ** columns, long * numCol
   */
 STDMETHODIMP CAccTable::get_summary(IUnknown * * accessible)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -581,9 +539,6 @@ STDMETHODIMP CAccTable::get_summary(IUnknown * * accessible)
   */
 STDMETHODIMP CAccTable::get_isColumnSelected(long column, unsigned char * isSelected)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -608,9 +563,6 @@ STDMETHODIMP CAccTable::get_isColumnSelected(long column, unsigned char * isSele
   */
 STDMETHODIMP CAccTable::get_isRowSelected(long row, unsigned char * isSelected)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -637,9 +589,6 @@ STDMETHODIMP CAccTable::get_isRowSelected(long row, unsigned char * isSelected)
   */
 STDMETHODIMP CAccTable::get_isSelected(long row, long column, unsigned char * isSelected)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -664,9 +613,6 @@ STDMETHODIMP CAccTable::get_isSelected(long row, long column, unsigned char * is
   */
 STDMETHODIMP CAccTable::selectRow(long row)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // Check XAccessibleTable reference.
@@ -709,9 +655,6 @@ STDMETHODIMP CAccTable::selectRow(long row)
   */
 STDMETHODIMP CAccTable::selectColumn(long column)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // Check XAccessibleTable reference.
@@ -755,9 +698,6 @@ STDMETHODIMP CAccTable::selectColumn(long column)
   */
 STDMETHODIMP CAccTable::unselectRow(long row)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // Check XAccessibleTable reference.
@@ -803,9 +743,6 @@ STDMETHODIMP CAccTable::unselectRow(long row)
   */
 STDMETHODIMP CAccTable::unselectColumn(long column)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // Check XAccessibleTable reference.
@@ -849,9 +786,6 @@ STDMETHODIMP CAccTable::unselectColumn(long column)
  */
 STDMETHODIMP CAccTable::put_XInterface(hyper pXInterface)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     CUNOXWrapper::put_XInterface(pXInterface);
@@ -880,9 +814,6 @@ STDMETHODIMP CAccTable::put_XInterface(hyper pXInterface)
   */
 STDMETHODIMP CAccTable::get_columnIndex(long childIndex, long * columnIndex)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -905,9 +836,6 @@ STDMETHODIMP CAccTable::get_columnIndex(long childIndex, long * columnIndex)
   */
 STDMETHODIMP CAccTable::get_rowIndex(long childIndex, long * rowIndex)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -930,9 +858,6 @@ STDMETHODIMP CAccTable::get_rowIndex(long childIndex, long * rowIndex)
   */
 STDMETHODIMP CAccTable::get_childIndex(long RowIndex , long columnIndex, long * childIndex )
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -956,9 +881,6 @@ STDMETHODIMP CAccTable::get_rowColumnExtentsAtIndex(long,
         long  *,
         boolean  *)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     return E_NOTIMPL;
@@ -977,9 +899,6 @@ STDMETHODIMP CAccTable::get_modelChange(IA2TableModelChange  *)
 //    Number of children currently selected
 STDMETHODIMP CAccTable::get_nSelectedChildren(long *childCount)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -1009,9 +928,6 @@ STDMETHODIMP CAccTable::get_nSelectedChildren(long *childCount)
 //    Length of array (not more than maxChildren)
 STDMETHODIMP CAccTable::get_selectedChildren(long, long **children, long *nChildren)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
diff --git a/winaccessibility/source/UAccCOM/AccTextBase.cxx b/winaccessibility/source/UAccCOM/AccTextBase.cxx
index 756bce9..8e0be14 100644
--- a/winaccessibility/source/UAccCOM/AccTextBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccTextBase.cxx
@@ -57,9 +57,6 @@ CAccTextBase::~CAccTextBase()
 */
 STDMETHODIMP CAccTextBase::get_addSelection(long startOffset, long endOffset)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK XInterface#
@@ -94,9 +91,6 @@ STDMETHODIMP CAccTextBase::get_addSelection(long startOffset, long endOffset)
 */
 STDMETHODIMP CAccTextBase::get_attributes(long offset, long * startOffset, long * endOffset, BSTR * textAttributes)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (startOffset == NULL || endOffset == NULL || textAttributes == NULL)
@@ -217,9 +211,6 @@ STDMETHODIMP CAccTextBase::get_attributes(long offset, long * startOffset, long
 */
 STDMETHODIMP CAccTextBase::get_caretOffset(long * offset)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (offset == NULL)
@@ -244,9 +235,6 @@ STDMETHODIMP CAccTextBase::get_caretOffset(long * offset)
 */
 STDMETHODIMP CAccTextBase::get_characterCount(long * nCharacters)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (nCharacters == NULL)
@@ -275,9 +263,6 @@ STDMETHODIMP CAccTextBase::get_characterCount(long * nCharacters)
 */
 STDMETHODIMP CAccTextBase::get_characterExtents(long offset, IA2CoordinateType coordType, long * x, long * y, long * width, long * height)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (x == NULL || height == NULL || y == NULL || width == NULL)
@@ -348,9 +333,6 @@ STDMETHODIMP CAccTextBase::get_characterExtents(long offset, IA2CoordinateType c
 */
 STDMETHODIMP CAccTextBase::get_nSelections(long * nSelections)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (nSelections == NULL)
@@ -395,7 +377,6 @@ STDMETHODIMP CAccTextBase::get_nSelections(long * nSelections)
 */
 STDMETHODIMP CAccTextBase::get_offsetAtPoint(long x, long y, IA2CoordinateType, long * offset)
 {
-    CHECK_ENABLE_INF
     ENTER_PROTECTED_BLOCK
 
     if (offset == NULL)
@@ -423,9 +404,6 @@ STDMETHODIMP CAccTextBase::get_offsetAtPoint(long x, long y, IA2CoordinateType,
 
 STDMETHODIMP CAccTextBase::get_selection(long selectionIndex, long * startOffset, long * endOffset)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (startOffset == NULL || endOffset == NULL )
@@ -473,9 +451,6 @@ STDMETHODIMP CAccTextBase::get_selection(long selectionIndex, long * startOffset
 */
 STDMETHODIMP CAccTextBase::get_text(long startOffset, long endOffset, BSTR * text)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (text == NULL)
@@ -521,9 +496,6 @@ STDMETHODIMP CAccTextBase::get_text(long startOffset, long endOffset, BSTR * tex
 */
 STDMETHODIMP CAccTextBase::get_textBeforeOffset(long offset, IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, BSTR * text)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK#
@@ -610,9 +582,6 @@ STDMETHODIMP CAccTextBase::get_textBeforeOffset(long offset, IA2TextBoundaryType
 */
 STDMETHODIMP CAccTextBase::get_textAfterOffset(long offset, IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, BSTR * text)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (startOffset == NULL || endOffset == NULL || text == NULL)
@@ -697,10 +666,6 @@ STDMETHODIMP CAccTextBase::get_textAfterOffset(long offset, IA2TextBoundaryType
 */
 STDMETHODIMP CAccTextBase::get_textAtOffset(long offset, IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, BSTR * text)
 {
-
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (startOffset == NULL || text == NULL ||endOffset == NULL)
@@ -783,9 +748,6 @@ STDMETHODIMP CAccTextBase::get_textAtOffset(long offset, IA2TextBoundaryType bou
 */
 STDMETHODIMP CAccTextBase::removeSelection(long selectionIndex)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK XInterface#
@@ -820,9 +782,6 @@ STDMETHODIMP CAccTextBase::removeSelection(long selectionIndex)
 */
 STDMETHODIMP CAccTextBase::setCaretOffset(long offset)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK XInterface#
@@ -846,9 +805,6 @@ STDMETHODIMP CAccTextBase::setCaretOffset(long offset)
 */
 STDMETHODIMP CAccTextBase::setSelection(long, long startOffset, long endOffset)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     // #CHECK XInterface#
@@ -871,9 +827,6 @@ STDMETHODIMP CAccTextBase::setSelection(long, long startOffset, long endOffset)
 */
 STDMETHODIMP CAccTextBase::get_nCharacters(long * nCharacters)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (nCharacters == NULL)
@@ -938,9 +891,6 @@ STDMETHODIMP CAccTextBase::scrollSubstringTo(long, long, IA2ScrollType)
 */
 STDMETHODIMP CAccTextBase::put_XInterface(hyper pXInterface)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     CUNOXWrapper::put_XInterface(pXInterface);
diff --git a/winaccessibility/source/UAccCOM/AccValue.cxx b/winaccessibility/source/UAccCOM/AccValue.cxx
index 45218cb..c1781d2 100644
--- a/winaccessibility/source/UAccCOM/AccValue.cxx
+++ b/winaccessibility/source/UAccCOM/AccValue.cxx
@@ -35,9 +35,6 @@ using namespace com::sun::star::uno;
 
 STDMETHODIMP CAccValue::get_currentValue(VARIANT * currentValue)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (currentValue == NULL)
@@ -63,9 +60,6 @@ STDMETHODIMP CAccValue::get_currentValue(VARIANT * currentValue)
    */
 STDMETHODIMP CAccValue::setCurrentValue(VARIANT value)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if ( !pRXVal.is() )
@@ -144,9 +138,6 @@ STDMETHODIMP CAccValue::setCurrentValue(VARIANT value)
    */
 STDMETHODIMP CAccValue::get_maximumValue(VARIANT *maximumValue)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (maximumValue == NULL)
@@ -171,9 +162,6 @@ STDMETHODIMP CAccValue::get_maximumValue(VARIANT *maximumValue)
    */
 STDMETHODIMP CAccValue::get_minimumValue(VARIANT *mininumValue)
 {
-
-    CHECK_ENABLE_INF
-
     ENTER_PROTECTED_BLOCK
 
     if (mininumValue == NULL)
diff --git a/winaccessibility/source/UAccCOM/CheckEnableAccessible.h b/winaccessibility/source/UAccCOM/CheckEnableAccessible.h
deleted file mode 100644
index 8d324ee..0000000
--- a/winaccessibility/source/UAccCOM/CheckEnableAccessible.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#ifndef INCLUDED_WINACCESSIBILITY_SOURCE_UACCCOM_CHECKENABLEACCESSIBLE_H
-#define INCLUDED_WINACCESSIBILITY_SOURCE_UACCCOM_CHECKENABLEACCESSIBLE_H
-
-inline bool IsEnableAccessibleInterface() { return true; }
-
-#define CHECK_ENABLE_INF if(!IsEnableAccessibleInterface()){ return S_FALSE; }
-#define CHECK_ENABLE_INF_ZERO if(!IsEnableAccessibleInterface()){ return 0; }
-
-#endif // INCLUDED_WINACCESSIBILITY_SOURCE_UACCCOM_CHECKENABLEACCESSIBLE_H
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/winaccessibility/source/UAccCOM/EnumVariant.cxx b/winaccessibility/source/UAccCOM/EnumVariant.cxx
index 3f53763..0d6793a 100644
--- a/winaccessibility/source/UAccCOM/EnumVariant.cxx
+++ b/winaccessibility/source/UAccCOM/EnumVariant.cxx
@@ -46,7 +46,6 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Next(ULONG cElements,VARIANT __RPC_FAR *
     if (pvar == NULL)
         return E_INVALIDARG;
 
-    CHECK_ENABLE_INF
     if (pcElementFetched != NULL)
         *pcElementFetched = 0;
 
@@ -91,7 +90,6 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Next(ULONG cElements,VARIANT __RPC_FAR *
    */
 HRESULT STDMETHODCALLTYPE CEnumVariant::Skip(ULONG cElements)
 {
-    CHECK_ENABLE_INF
     m_lCurrent += cElements;
     if (m_lCurrent > (long)(m_lLBound+m_pXAccessibleSelection->getSelectedAccessibleChildCount()))
     {
@@ -169,8 +167,6 @@ HRESULT STDMETHODCALLTYPE CEnumVariant::Create(CEnumVariant __RPC_FAR *__RPC_FAR
    */
 long CEnumVariant::GetCountOfElements()
 {
-    CHECK_ENABLE_INF_ZERO
-
     if(m_pXAccessibleSelection.is())

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list