[Libreoffice-commits] core.git: Branch 'libreoffice-6-3' - sc/source

Caolán McNamara (via logerrit) logerrit at kemper.freedesktop.org
Fri Jun 21 19:43:29 UTC 2019


 sc/source/ui/Accessibility/AccessibleDocument.cxx |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

New commits:
commit 49c92a3b46b8f4c3303ea17a508f91a0c87d54f6
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Fri Jun 21 14:56:19 2019 +0100
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Fri Jun 21 21:42:28 2019 +0200

    remove then dispose, not dispose then remove
    
    asserts seen in inline spelling in calc otherwise
    
    Change-Id: If78142cb0a3e23de6eb0e5d40622a4c7d06df8ec
    Reviewed-on: https://gerrit.libreoffice.org/74512
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx
index f9ea7367a6bb..b7876c1a6f61 100644
--- a/sc/source/ui/Accessibility/AccessibleDocument.cxx
+++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx
@@ -1495,6 +1495,10 @@ void ScAccessibleDocument::Notify( SfxBroadcaster& rBC, const SfxHint& rHint )
                 if (mpTempAccEdit)
                 {
                     mpTempAccEdit->LostFocus();
+                }
+                RemoveChild(mxTempAcc, true);
+                if (mpTempAccEdit)
+                {
                     // tdf#125982 a11y use-after-free of editengine by
                     // ScAccessibleEditObjectTextData living past the
                     // the editengine of the editview passed in above
@@ -1502,7 +1506,6 @@ void ScAccessibleDocument::Notify( SfxBroadcaster& rBC, const SfxHint& rHint )
                     mpTempAccEdit->dispose();
                     mpTempAccEdit = nullptr;
                 }
-                RemoveChild(mxTempAcc, true);
                 if (mpAccessibleSpreadsheet.is() && mpViewShell && mpViewShell->IsActive())
                     mpAccessibleSpreadsheet->GotFocus();
                 else if( mpViewShell && mpViewShell->IsActive())


More information about the Libreoffice-commits mailing list