basctl/source/basicide/baside2b.cxx               |    6 +++++-
 writerfilter/source/dmapper/DomainMapper_Impl.cxx |   13 ++++++++++++-
 2 files changed, 17 insertions(+), 2 deletions(-)

New commits:
commit ea7c17960ddfe93249b17612662adc4694bd02b3
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Tue Dec 5 10:58:57 2023 +0000
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Wed Dec 6 19:12:40 2023 +0100

    Resolves: tdf#158441 we don't want to return early for all handled keys
    
    a problem since:
    
    commit c39bd1f6690ade936d62a66265b9b277061024d8
    Author: Caolán McNamara <caol...@redhat.com>
    Date:   Wed Feb 19 10:13:15 2020 +0000
    
        weld CodeCompleteWindow
    
    Change-Id: I520a591bad89515c973098f4200f01ae0ddbdc34
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160337
    Tested-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    (cherry picked from commit 6aba19406767a54bb61eaffb2903c1b2902da9a8)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160356
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/basctl/source/basicide/baside2b.cxx 
b/basctl/source/basicide/baside2b.cxx
index f1c1a7303878..373114ae4ec0 100644
--- a/basctl/source/basicide/baside2b.cxx
+++ b/basctl/source/basicide/baside2b.cxx
@@ -562,7 +562,11 @@ void EditorWindow::KeyInput( const KeyEvent& rKEvt )
 
     if (pCodeCompleteWnd->IsVisible() && 
CodeCompleteOptions::IsCodeCompleteOn())
     {
-        if (pCodeCompleteWnd->HandleKeyInput(rKEvt))
+        pCodeCompleteWnd->HandleKeyInput(rKEvt);
+        if( rKEvt.GetKeyCode().GetCode() == KEY_UP
+            || rKEvt.GetKeyCode().GetCode() == KEY_DOWN
+            || rKEvt.GetKeyCode().GetCode() == KEY_TAB
+            || rKEvt.GetKeyCode().GetCode() == KEY_POINT)
             return;
     }
 
commit c8c1c3e99212604e50fe42dd4752d75601da273e
Author:     Miklos Vajna <vmik...@collabora.com>
AuthorDate: Tue Dec 5 11:43:42 2023 +0100
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Wed Dec 6 19:12:27 2023 +0100

    writerfilter: fix crash in DomainMapper_Impl::PushSdt()
    
    Crashreport signature:
    
    Fatal signal received: SIGSEGV code: 1 for address: 0x0
    
    program/libwriterfilterlo.so
            writerfilter::dmapper::DomainMapper_Impl::PushSdt()
                    writerfilter/source/dmapper/DomainMapper_Impl.cxx:987
    program/libwriterfilterlo.so
            writerfilter::dmapper::DomainMapper::lcl_attribute(unsigned int, 
writerfilter::Value&)
                    include/tools/ref.hxx:56
    program/libwriterfilterlo.so
            
writerfilter::ooxml::OOXMLProperty::resolve(writerfilter::Properties&)
                    include/tools/ref.hxx:56
    program/libwriterfilterlo.so
            
writerfilter::ooxml::OOXMLPropertySet::resolve(writerfilter::Properties&)
                    include/tools/ref.hxx:157
    
    Change-Id: I76416ca707a4ac40495e5c22f62fcd017bcb5e48
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160336
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com>
    Tested-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    (cherry picked from commit 728f6ec104b1a91c8c8ea0790bc7f56471c67737)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160351
    Tested-by: Jenkins
    (cherry picked from commit 24135dc15a797ca91dd32c70cbc4d26a05dfd127)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160355
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx 
b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index 79dee6e01cf5..9e90f132b76e 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -980,8 +980,19 @@ void DomainMapper_Impl::PushSdt()
     }
 
     uno::Reference<text::XTextAppend> xTextAppend = 
m_aTextAppendStack.top().xTextAppend;
+    if (!xTextAppend.is())
+    {
+        return;
+    }
+
+    uno::Reference<text::XText> xText = xTextAppend->getText();
+    if (!xText.is())
+    {
+        return;
+    }
+
     uno::Reference<text::XTextCursor> xCursor
-        = 
xTextAppend->getText()->createTextCursorByRange(xTextAppend->getEnd());
+        = xText->createTextCursorByRange(xTextAppend->getEnd());
     // Offset so the cursor is not adjusted as we import the SDT's content.
     bool bStart = !xCursor->goLeft(1, /*bExpand=*/false);
     m_xSdtStarts.push({bStart, OUString(), xCursor->getStart()});

Reply via email to