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

Caolán McNamara (via logerrit) logerrit at kemper.freedesktop.org
Tue Jun 29 16:42:58 UTC 2021


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

New commits:
commit d8dcd706c74b4a0fa420946c707137b097b3c7fe
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Tue Jun 29 11:20:40 2021 +0100
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Tue Jun 29 18:42:22 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/+/118070
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/svx/source/dialog/weldeditview.cxx b/svx/source/dialog/weldeditview.cxx
index e89cfe4e71c9..7dd58d31275f 100644
--- a/svx/source/dialog/weldeditview.cxx
+++ b/svx/source/dialog/weldeditview.cxx
@@ -908,6 +908,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