sw/source/core/unocore/unobkm.cxx |    2 ++
 1 file changed, 2 insertions(+)

New commits:
commit 6edbc6c9922f960a8b7d606474b9411ca9b69450
Author:     Michael Stahl <michael.st...@cib.de>
AuthorDate: Fri Oct 18 14:03:03 2019 +0200
Commit:     Thorsten Behrens <thorsten.behr...@cib.de>
CommitDate: Mon Oct 28 22:35:58 2019 +0100

    sw: fix crash after SwXFieldmark::SetFieldType()
    
    It deletes the existing IFieldmark and creates a new one; meanwhile the
    SwXFieldmark is disposed and its m_pImpl->m_pDoc is cleared but then
    it's not initialised again by registerInMark().
    
    (regression from f66a83c95c21b4311918a64bb85016857b49f4d4)
    
    Change-Id: I8c4d9b829f68b9e5bd714bcad2061d0ff95bfb82
    Reviewed-on: https://gerrit.libreoffice.org/81081
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <michael.st...@cib.de>
    (cherry picked from commit 26599f049df7c52eca001ba52a0684888201e1ba)
    Reviewed-on: https://gerrit.libreoffice.org/81457
    Reviewed-by: Thorsten Behrens <thorsten.behr...@cib.de>

diff --git a/sw/source/core/unocore/unobkm.cxx 
b/sw/source/core/unocore/unobkm.cxx
index 0a53c27c4516..556a2555987f 100644
--- a/sw/source/core/unocore/unobkm.cxx
+++ b/sw/source/core/unocore/unobkm.cxx
@@ -104,6 +104,8 @@ void SwXBookmark::Impl::registerInMark(SwXBookmark& rThis,
         {
             pMarkBase->SetXBookmark(xBookmark);
         }
+        assert(m_pDoc == nullptr || m_pDoc == pBkmk->GetMarkPos().GetDoc());
+        m_pDoc = pBkmk->GetMarkPos().GetDoc();
     }
     else if (m_pRegisteredBookmark)
     {
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to