[Libreoffice-commits] core.git: Branch 'libreoffice-5-3' - sw/source

Michael Stahl mstahl at redhat.com
Mon Dec 19 19:48:44 UTC 2016


 sw/source/core/view/viewimp.cxx |   12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

New commits:
commit 2e74bf2e05f0c98bb9ca318e6b0f9e715d0fdba7
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Dec 15 23:08:53 2016 +0100

    tdf#104488 sw: assert if exception escapes from UpdateAccessible()
    
    SwViewShellImp::UpdateAccessible() is called during scrolling and the
    like, and if the a11y code doesn't catch the exceptions the document
    view won't get repainted.
    
    Change-Id: I4ec591aacf514bef8c5a66a7e674b0cee3b7201a
    (cherry picked from commit 9ada2da6f1bceb5d24f23d8df08103535714918a)
    Reviewed-on: https://gerrit.libreoffice.org/32189
    Reviewed-by: Michael Stahl <mstahl at redhat.com>
    Tested-by: Michael Stahl <mstahl at redhat.com>

diff --git a/sw/source/core/view/viewimp.cxx b/sw/source/core/view/viewimp.cxx
index e403be9..335f45a 100644
--- a/sw/source/core/view/viewimp.cxx
+++ b/sw/source/core/view/viewimp.cxx
@@ -297,7 +297,17 @@ void SwViewShellImp::UpdateAccessible()
     OSL_ENSURE( pWin, "no window, no access" );
 
     if( IsAccessible() && rIDLA.GetCurrentViewShell() && pWin )
-        GetAccessibleMap().GetDocumentView();
+    {
+        try
+        {
+            GetAccessibleMap().GetDocumentView();
+        }
+        catch (uno::Exception const& e)
+        {
+            SAL_WARN("sw.a11y", "exception: " << e.Message);
+            assert(!"SwViewShellImp::UpdateAccessible: unhandled exception");
+        }
+    }
 }
 
 void SwViewShellImp::DisposeAccessible(const SwFrame *pFrame,


More information about the Libreoffice-commits mailing list