[Libreoffice-commits] core.git: Branch 'libreoffice-7-1' - svx/source

Caolán McNamara (via logerrit) logerrit at kemper.freedesktop.org
Thu Jul 1 09:46:52 UTC 2021


 svx/source/dialog/weldeditview.cxx |   13 +++++++++++++
 1 file changed, 13 insertions(+)

New commits:
commit 553b7a044c83498288227e261f1de918db6cd421
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Tue Jun 29 11:20:40 2021 +0100
Commit:     Michael Stahl <michael.stahl at allotropia.de>
CommitDate: Thu Jul 1 11:46:19 2021 +0200

    Related: tdf#143088 return early on notification from frozen editengine
    
    processing EE_NOTIFY_PROCESSNOTIFICATIONS from an EditEngine with an
    UpdateMode mode of false will just to on to cause
    AccessibleTextHelper_Impl::GetTextForwarder to throw an exception as a
    Frozen EditEngine is considered Invalid so return early instead
    
    Change-Id: I86f9647b7bf839cf3c7cf2f029be8c7c5aeef1f4
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118071
    Reviewed-by: Michael Stahl <michael.stahl at allotropia.de>
    Tested-by: Jenkins

diff --git a/svx/source/dialog/weldeditview.cxx b/svx/source/dialog/weldeditview.cxx
index 1a315930c332..56ce13f12c3a 100644
--- a/svx/source/dialog/weldeditview.cxx
+++ b/svx/source/dialog/weldeditview.cxx
@@ -769,6 +769,19 @@ WeldTextForwarder::~WeldTextForwarder()
 
 IMPL_LINK(WeldTextForwarder, NotifyHdl, EENotify&, rNotify, void)
 {
+    if (EditEngine* pEditEngine = m_rEditAcc.GetEditEngine())
+    {
+        if (rNotify.eNotificationType == EE_NOTIFY_PROCESSNOTIFICATIONS
+            && !pEditEngine->GetUpdateMode())
+        {
+            // tdf#143088 an UpdateMode of false will just to on to cause
+            // AccessibleTextHelper_Impl::GetTextForwarder to throw an
+            // exception as a Frozen EditEngine is considered Invalid so return
+            // early instead
+            return;
+        }
+    }
+
     ::std::unique_ptr<SfxHint> aHint = SvxEditSourceHelper::EENotification2Hint(&rNotify);
     if (aHint)
         m_rEditSource.GetBroadcaster().Broadcast(*aHint);


More information about the Libreoffice-commits mailing list