sw/source/filter/ww8/ww8par6.cxx | 15 +++++++++++++++ 1 file changed, 15 insertions(+)
New commits: commit 1a6dceee2ac1e334804de31fb6c387a41706b1c4 Author: Caolán McNamara <caol...@redhat.com> Date: Sun Mar 11 21:24:05 2018 +0000 ofz#6827 drop last anchor pos if it will be joined Change-Id: Ib36b74b455f741d9dcccbdf244d21453837bda3c Reviewed-on: https://gerrit.libreoffice.org/51099 Reviewed-by: Michael Stahl <mst...@redhat.com> Tested-by: Jenkins <c...@libreoffice.org> diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx index 3678807b542f..1d88c6fac4e8 100644 --- a/sw/source/filter/ww8/ww8par6.cxx +++ b/sw/source/filter/ww8/ww8par6.cxx @@ -2438,6 +2438,21 @@ bool SwWW8ImplReader::JoinNode(SwPaM &rPam, bool bStealAttr) if (bStealAttr) m_xCtrlStck->StealAttr(rPam.GetPoint()->nNode); + if (m_pLastAnchorPos.get()) + { + //If the last anchor pos is here, then clear the anchor pos. + //This "last anchor pos" is only used for fixing up the + //positions of things anchored to page breaks and here + //we are removing the last paragraph of a frame, so there + //cannot be a page break at this point so we can + //safely reset m_pLastAnchorPos to avoid any dangling + //SwIndex's pointing into the deleted paragraph + SwNodeIndex aLastAnchorPos(m_pLastAnchorPos->nNode); + SwNodeIndex aToBeJoined(aPref, 1); + if (aLastAnchorPos == aToBeJoined) + m_pLastAnchorPos.reset(); + } + pNode->JoinNext(); bRet = true; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits